标签:
<?php //快速排序 $arr=array(); $arr=array(52,44,23,16,72,47,189); function qsort($arr){ $length=count($arr);//得到数组的长度 if(!is_array($arr)||empty($arr)){ //先判断是否需要继续进行 return array(); } if($length<=1){ //避免无限递归 return $arr; } $key=$arr[0];//选择一个标尺,比它大的放到右边,比它小的存放到左边 $left_array=array(); $right_array=array(); for($i=1;$i<$length;$i++){ if($arr[$i]<$key){ $left_array[]=$arr[$i];//小于标尺的 }else{ $right_array[]=$arr[$i];//大于标尺的 } } $left_array = qsort($left_array); $right_array = qsort($right_array); return array_merge($left_array,array($key),$right_array); } print_r(qsort($arr)); //Array ( [0] => 16 [1] => 23 [2] => 44 [3] => 47 [4] => 52 [5] => 72 [6] => 189 ) ?>
标签:
原文地址:http://www.cnblogs.com/719907411hl/p/5021618.html