最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php實現(xiàn)快速排序法函數(shù)代碼

 更新時間:2012年08月27日 15:56:44   作者:  
取一個值與其他值進行比較,小的放在這個值的左邊,大的放在這個值的右邊,然后按照這個方式遞歸
代碼1:
復制代碼 代碼如下:

<?php
function quicksort($str){
if(count($str)<=1) return $str;//如果個數(shù)不大于一,直接返回
$key=$str[0];//取一個值,稍后用來比較;
$left_arr=array();
$right_arr=array();
for($i=1;$i<count($str);$i++){//比$key大的放在右邊,小的放在左邊;
if($str[$i]<=$key)
$left_arr[]=$str[$i];
else
$right_arr[]=$str[$i];
}
$left_arr=quicksort($left_arr);//進行遞歸;
$right_arr=quicksort($right_arr);
return array_merge($left_arr,array($key),$right_arr);//將左中右的值合并成一個數(shù)組;
}//以下是測試
$str=array(5,3,8,2,5,9,7,2,1,4,0);
print_r(quicksort($str));
?>

代碼2:
復制代碼 代碼如下:

/* @快速排序法*/
function quickSort($left,$right,$arr){
$l = $left;
$r = $right;
$pivot = $arr[($left+$right)/2];
$temp = 0;

while($l<$r){
while($arr[$l]<$pivot){
$l++;
}
while($arr[$r]>$pivot){
$r--;
}

if($l>=$r) break;

$temp = $arr[$l];
$arr[$l] = $arr[$r];
$arr[$r] = $temp;

if($arr[$l]==$pivot) --$r;
if($arr[$r]==$pivot) ++$l;
}

if($l==$r){
$l++;
$r--;
}

if($left<$r){
quickSort($left, $r, $arr);
}elseif($right>$l){
quickSort($l, $right, $arr);
}else{
return $arr;
}
}

相關文章

最新評論

新乡县| 青铜峡市| 化德县| 会泽县| 苍山县| 台中县| 富蕴县| 盐源县| 枣阳市| 丹寨县| 海盐县| 桃园县| 寿光市| 东港市| 商丘市| 克山县| 汝南县| 南和县| 锦屏县| 若羌县| 昂仁县| 洛浦县| 河西区| 东山县| 洪泽县| 亚东县| 灌阳县| 太和县| 高雄县| 淮滨县| 永宁县| 教育| 梁河县| 五华县| 大石桥市| 买车| 明星| 峨边| 天峨县| 巴青县| 江阴市|