冒泡法排序與二分法查找排序算法是我們在初中時就學過的,下面我來介紹在PHP冒泡法排序與二分法查 找實例,各位同學不防進入參考。
代碼如下 復制代碼
//冒泡法排序
//隨便給出一個亂序數組
$arr = array(0,2,10,9,19,23,89,112,321,234);
//統計數組
$num = count($arr);
//冒泡倒序排列
for($i=0;$i<$num-1;$i++){
for($m=0;$m<$num-1;$m++){
if($arr[$m]<$arr[$m+1]){
$temp = $arr[$m];
$arr[$m] = $arr[$m+1];
$arr[$m+1] = $temp;
}
// echo $arr[$m].'<br>';
}
}
//輸出排序後的結果
var_dump($arr);
//冒泡順序排列
for($x=0;$x<$num-1;$x++){
for($y=0;$y<$num-1;$y++){
if($arr[$y]>$arr[$y+1]){
$temp = $arr[$y];
$arr[$y] = $arr[$y+1];
$arr[$y+1] = $temp;
}
}
}
//輸出排序後的結果
var_dump($arr);
//二分法查找
function dichotomy($array,$k,$low=0,$high=0){
if(count($array)!= 0 && $high == 0){
$high = count($array);
}
if($low <= $high){
$mid = intval(($low+$high)/2);
if( $array[$mid] == $k ){
return $mid;
}elseif( $k<$array[$mid]){
return dichotomy( $array,$k,$low=0,$mid-1);
}else{
return dichotomy( $array,$k,$mid+1,$high);
}
}else{
return false;
}
}
//輸出查找結果
echo dichotomy($arr,23);
今天簡單的研究了一下最常用的冒泡法排序與二分法查找,寫了一個簡單的案例,加強自己對php的學習
,也希望對今後php學習者能提供一點點的幫助。