中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

PHP快速排序算法怎么應用

PHP
小億
86
2023-10-11 17:36:39
欄目: 編程語言

在PHP中,可以使用快速排序算法來對數組進行排序。以下是一個使用遞歸實現的快速排序算法的示例:

function quickSort($array)
{
// 如果數組為空或只有一個元素,則無需排序,直接返回
if (count($array) <= 1) {
return $array;
}
// 選擇第一個元素作為基準值
$pivot = $array[0];
$left = $right = [];
// 將比基準值小的元素放在左邊,比基準值大的元素放在右邊
for ($i = 1; $i < count($array); $i++) {
if ($array[$i] < $pivot) {
$left[] = $array[$i];
} else {
$right[] = $array[$i];
}
}
// 遞歸對左右兩個子數組進行快速排序,并拼接結果
return array_merge(quickSort($left), [$pivot], quickSort($right));
}
// 示例用法
$array = [3, 1, 5, 2, 4];
$result = quickSort($array);
print_r($result);

輸出結果為:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 ),表示數組已經按照升序排列。

在上述示例中,首先選擇數組的第一個元素作為基準值,并將比基準值小的元素放在左邊,比基準值大的元素放在右邊。然后,遞歸對左右兩個子數組進行快速排序,并將結果拼接起來。最后,返回完全排好序的數組。

0
洞头县| 鄂温| 昌图县| 博爱县| 丹棱县| 镇雄县| 新泰市| 抚宁县| 醴陵市| 河北省| 泰顺县| 开江县| 南郑县| 轮台县| 广德县| 夹江县| 清苑县| 利辛县| 陆河县| 镇巴县| 固原市| 鄂伦春自治旗| 东乡县| 定安县| 呼伦贝尔市| 城口县| 大足县| 阳山县| 邵阳县| 安庆市| 宝坻区| 边坝县| 湖口县| 金坛市| 平凉市| 东阿县| 台安县| 洪雅县| 泗洪县| 米林县| 达拉特旗|