国产探花免费观看_亚洲丰满少妇自慰呻吟_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;
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 禄丰县| 商丘市| 韩城市| 甘泉县| 东平县| 西乌珠穆沁旗| 鄂尔多斯市| 富顺县| 于田县| 肥西县| 大冶市| 耿马| 西青区| 崇明县| 乌兰察布市| 邹城市| 绥德县| 金川县| 武安市| 义马市| 长岭县| 灵台县| 南郑县| 安泽县| 荔波县| 河津市| 洪雅县| 岳普湖县| 农安县| 青龙| 徐汇区| 会昌县| 信阳市| 陵川县| 曲沃县| 沙坪坝区| 繁昌县| 繁昌县| 漳浦县| 惠州市| 台湾省|