PHP四种基础算法

1.冒泡算法

//冒泡排序 for($i=1; $i<$len; $i++){ for($j=0; $j<$len-$i; $j++){ if($arr[$j] > $arr[$j+1]){ $tmp = $arr[$j]; $arr[$j] = $arr[$j+1]; $arr[$j+1] = $tmp; } } }

2.选择排序
for($i=0; $i<$len; $i++){ $p = $i; for($j=$i+1; $j<$len; $j++){ if($arr[$p] > $arr[$j]){ $p = $j; } } if($p != $i){ $tmp = $arr[$i]; $arr[$i] = $arr[$p]; $arr[$p] = $tmp; }}

3.插入排序
for($i=1; $i<$len; $i++){ $tmp = $arr[$i]; for($j=$i-1; $j>=0; $j--){ if($tmp > $arr[$j]){ $arr[$j+1] = $arr[$j]; $arr[$j] = $tmp; } } }

【PHP四种基础算法】4.快速排序
function quickSort($arr){ $tmp = $arr[0]; $len = count($arr); $left = $right = []; for($i=1; $i<$len; $i++){ if($arr[$i] < $tmp){ $left[] = $arr[$i]; }else{ $right[] = $arr[$i]; } } return array_merge($left.[$tmp].$right); }

    推荐阅读