国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php實現快速排序法函數代碼

2024-05-04 23:14:09
字體:
來源:轉載
供稿:網友
代碼1:

復制代碼 代碼如下:


<?php
function quicksort($str){
if(count($str)<=1) return $str;//如果個數不大于一,直接返回
$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);//將左中右的值合并成一個數組;
}//以下是測試
$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;
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴堡县| 原阳县| 巴林右旗| 洪洞县| 沙河市| 深泽县| 蓬溪县| 克拉玛依市| 遂溪县| 科尔| 沙田区| 保山市| 岑巩县| 麻栗坡县| 普安县| 泗水县| 左云县| 丁青县| 绥棱县| 云林县| 石阡县| 桐庐县| 宜川县| 曲周县| 济南市| 湟源县| 逊克县| 邯郸市| 涿鹿县| 柳州市| 滦南县| 白城市| 龙岩市| 通许县| 新密市| 西乌珠穆沁旗| 郎溪县| 屯留县| 石狮市| 太仆寺旗| 阿拉尔市|