PHP 常见算法【冒泡排序, 快速排序, 插入排序, 取舍排序, 二分法查找, .】
程序员文章站
2022-03-27 16:18:10
...
PHP 常见算法【冒泡排序, 快速排序, 插入排序, 选择排序, 二分法查找, ..】
// 冒泡排序function bubblesort($arr) { for($i=0,$j=count($arr); $i$i; $k--) { if ($arr[$k]// 快速排序function quicksort($arr) { if(($count = count($arr))// 插入排序function insertsort($arr) { for($i=1, $j=count($arr); $i 0 && $arr[$k-1] > $arr[$k]) { list($arr[$k], $arr[$k-1]) = array($arr[$k-1], $arr[$k]); $k--; } } return $arr;}$array=array(10,8,7,5,1,2,3,4);print_r(insertsort($array));?
// 选择排序, (非递归)function selectsort($arr) { for($i=0, $j=count($arr); $i $arr[$k]) { $min = $k; $temp = $arr[$k]; } } if($min != $i) list($arr[$min], $arr[$i]) = array($arr[$i], $arr[$min]); } return $arr;}$arr = array(9,3,11,23,90,99,12,34,22,87,32);print_r(selectsort($arr));?
// 选择排序(递归实现)function selectsort2($arr, $start = 0) { if(($count = count($arr)) == $start + 1) return $arr; $new = array(); $min = $arr[$start]; $min_index = $start; for($i=$start+1; $i??
?
$base) return binarysearch($arr, $value, $index+1, $end); else return $index;}$arr = array(1, 3, 5, 6, 7, 8, 10, 12, 14, 16, 18, 20);$value = 8;echo binarysearch($arr, $value);?待续...
相关文章
相关视频
上一篇: php延迟绑定和非延迟绑定解析
下一篇: php如何实现转向