Heim  >  Artikel  >  php教程  >  基本数据结构和php内置函数实现

基本数据结构和php内置函数实现

WBOY
WBOYOriginal
2016-06-13 11:39:53986Durchsuche

二分查找函数

//二分查找(数组里查找某个元素)
function bin_sch($array, $low, $high, $k){
if ($low $mid = intval(($low+$high)/2);
if ($array[$mid] == $k){
return $mid;
}elseif ($k 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; $iif($array[$i]==$k){
break;
}
}
if ($ireturn $i;
}else{
return -1;
}
}
线性表的删除函数的实现

//线性表的删除(数组中实现)
function delete_array_element($array, $i)
{
$len = count($array);
for ($j=$i; $j$array[$j] = $array[$j+1];
}
array_pop($array);
return $array;
}
冒泡排序函数的实现:

//冒泡排序(数组排序)
function bubble_sort($array)
{
$count = count($array);
if ($count
for($i=0; $ifor($j=$count-1; $j>$i; $j--){
if ($array[$j] $tmp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $tmp;
}
}
}
return $array;
}
快速排序函数实现

//快速排序(数组排序)
function quicksort($array) {
if (count($array)
$key = $array[0];
$left_arr = array();
$right_arr = array();

for ($i=1; $iif ($array[$i] $left_arr[] = $array[$i];
else
$right_arr[] = $array[$i];
}

$left_arr = quicksort($left_arr);
$right_arr = quicksort($right_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++;
continue;
}else{
break;
}
}
return $count;
}

//截取子串函数实现


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

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

if ($length > 0){
for ($i=$start; $i

  • 共3页:
  • 上一页
  • 1
  • 2
  • 3
  • 下一页
  • Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn