ホームページ  >  記事  >  バックエンド開発  >  基本的なデータ構造とPHP組み込み関数の実装_PHPチュートリアル

基本的なデータ構造とPHP組み込み関数の実装_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 14:57:30927ブラウズ

二分探索関数

//二分探索(配列内の要素を見つける)
function bin_sch($array, $low, $high, $k){
if ($low <= $high){
$mid = intval(($low+$high)/2);
if ($array[$mid] == $k){
return $mid;
}elseif ($k < $array[$mid]){ return bin_sch($array, $low, $mid-1, $k);
}else{
return bin_sch($array, $mid+1, $high, $k);
}
}
return -1;
}

逐次検索機能の実装

//逐次検索 (配列内の要素の検索)

function seq_sch($array, $n, $k){
$array[$n] = $k;
for($i=0; $i< $ n; $i++){
if($array[$i]==$k){
}
}
if ($i<$n){
}else{
return; - 1;
}
}
線形テーブルの削除関数の実装

//線形テーブルの削除(配列で実装)
function delete_array_element($array, $i)
{
$len = count($array);
for ($j=$i; $j<$len; $j++){
$array[$j] = $array[$j+1]
}
array_pop($array);
}
バブルソート関数の実装:

//バブルソート(配列ソート)
function bubble_sort($array)
{
$count = count($array)
if ($count <= 0) return false ;

for($i=0; $i<$count; $i++){
for($j=$count-1; $j>$i; $j--){
if ($array[ $ j] < $array[$j-1]){
$tmp = $array[$j] = $array[$j-1]; ] = $tmp;
}
}
}
return $array
}
クイックソート関数実装

//クイックソート(配列ソート)
function Quicksort($array) {
if (count($array) < ;= 1) $array を返します;

$key = $array[0];
$right_arr = array();配列); $i++){
if ($array[$i] <= $key)
$left_arr[] = $array[$i]
else
$right_arr[] = $array[$i] ;
}

$left_arr = クイックソート($left_arr);

return array_merge($left_arr, array($key), $right_arr);

PHP 組み込み文字列関数実装

//----------
// PHP 組み込み文字列関数実装
//-------- -- --------------

//文字列の長さ
function strlen($str)
{
if ($str == '') return 0;

$count = 0; while (1){
if ($str[$count] != NULL){
$count++;
}else{
}
}
return $count}

/関数の実装


function substr($str, $start, $length=NULL)
{
if ($str=='' || $start>strlen($str)) return; =NULL) && ($start>0) && ($length>strlen($str)-$start)) return;
if (($length!=NULL) && ($startstrlen ($str)+$start)) return;

if ($length == NULL) $length = (strlen($str) - $start){
for ($i) =(strlen($str)+$start); $i<(strlen($str)+$start+$length); $i++) {
$substr .= $str[$i]}

if ($length > 0){
for ($i=$start; $i
合計 3 ページ:

前のページ

1

2

3

次のページ





http://www.bkjia.com/PHPjc/364046.html

    www.bkjia.com
  • 本当
  • http://www.bkjia.com/PHPjc/364046.html
  • 技術記事
  • 二分探索関数 //二分探索(配列内の要素を検索する)関数 bin_sch($array, $low, $high, $k){ if ($low = $high){ $mid = intval(($low+$高い )/2); if ($array[$mid] == $...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。