素材牛VIP会员
php面试必备5大年夜算法
 tk***10  分类:PHP代码  人气:324  回帖:2  发布于4月前 收藏此帖(0)
//--------------------
// 根本数据构造算法
//--------------------
//二分查找(数组里查找某个元素)
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){
break;
}
}
if ($i<$n){
return  $i;
}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);
return $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] = $array[ $j-1];
$array [$j-1] = $tmp;
}
}
}
return $array;
}
//快速排序(数组排序)
function quick_sort($array ) {
if (count($array) <= 1) return $array;
$key = $array [0];
$left_arr  = array();
$right_arr = array();
for ($i= 1; $i if ($array[ $i] <= $key)
$left_arr [] = $array[$i];
else
$right_arr[] = $array[$i ];
}
$left_arr = quick_sort($left_arr );
$right_arr = quick_sort( $right_arr);
return array_merge($left_arr , array($key), $right_arr);
}
 标签:算法面试

评论辩论这个帖子(2)渣滓回帖将一概封号处理……

Lv1 菜鸟
*** 职业无 2月前#1
没碰着过
Lv1 菜鸟
风***扬 Web前端工程师 1月前#2
都是很实用的函数
 文明上彀,理性说话!   😉 阿里云荣幸券,戳我支付