$arr = [4,5,3,2,1,9,8,6,7];
冒泡排序
function maopao($arr){ $len = count($arr); for ($i=1; $i <$len ; $i++) { # code... for ($k=0; $k <($len-$i) ; $k++) { # code... if ($arr[$k]>$arr[$k+1]) { # code... $v_k = $arr[$k]; $arr[$k]=$arr[$k+1]; $arr[$k+1]=$v_k; } } } return $arr;}
快速排序
function kuaisu($arr){ $len = count($arr); if ($len<=1) { # code... return $arr; } //选择基准元素 $a = $arr[0]; $left = $right = []; //循环 for ($i=1; $i < $len; $i++) { # code... if ($arr[$i]<$a) { # code... $left[]=$arr[$i]; }else{ $right[]=$arr[$i]; } } $left = kuaisu($left); $right = kuaisu($right); return array_merge($left,[$a],$right);}
插入排序
function insertSort($arr){ $len = count($arr); for ($i=1; $i < $len; $i++) { # code... $tmp = $arr[$i]; for ($j=$i-1; $j >=0 ; $j--) { # code... if ($tmp<$arr[$j]) { # code... $arr[$j+1]=$arr[$j]; $arr[$j]=$tmp; }else{ break; } } } return $arr; }
选择排序
function selectSort($arr){ $len = count($arr); for ($i=0; $i < $len; $i++) { # code... $p=$i; for ($j=$i+1; $j < $len; $j++) { # code... if ($arr[$p]>$arr[$j]) { # code... $p=$j; } } $tmp = $arr[$p]; $arr[$p]=$arr[$i]; $arr[$i]=$tmp; } return $arr;}
推荐学习:php视频教程
以上就是php如何实现常见的排序的知识。速戳>>知识兔学习精品课!