快速排序演算法的php類
<?php function qsort(&$arr) { _quick_sort($arr, 0, count($arr) - 1); } function _quick_sort(&$arr, $low, $high) { $low_data = $arr[$low]; $prev_low = $low; $prev_high = $high; while ($low < $high) { while ($arr[$high] >= $low_data && $low < $high) { $high--; } if ($low < $high) { $arr[$low] = $arr[$high]; $low++; } while ($arr[$low] <= $low_data && $low < $high) { $low++; } if ($low < $high) { $arr[$high] = $arr[$low]; $high--; } }
採用遞歸演算法的快速排序。
@param array $arr 要排序的陣列
@param int $low 最低的排序子段
@param int $high 最高的排序欄位
免責聲明
本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn
相關文章
![了解快速排序演算法(附Java範例)](https://img.php.cn/upload/article/001/246/273/173713711746199.png)
18 Jan 2025
QuickSort 演算法詳解:高效率的排序利器 快速排序 (QuickSort) 是一種基於分治策略的高效排序演算法。分治法將問題分解成更小的子問題,分別解決這些子問題,然後組合子問題的解得到最終解。在快速排序中,陣列透過選擇一個分區元素來劃分,該元素決定數組的分割點。在劃分之前,分區元素的位置會重新排列,使其位於大於它的元素之前,小於它的元素之後。左右子數組將以這種方式遞歸劃分,直到每個子數組只包含一個元素,此時數組已排序。 快速排序工作原理 讓我們以升序排序以下數組為例: 步驟 1:選擇樞軸元
![](/static/imghw/down_right.png)
![](/static/imghw/taglogo.png)
Hot Tools
![](/static/imghw/taglogo.png)
熱門文章
崩壞:星穹鐵道 - 所有金色替罪羊謎題解決方案
18 Jan 2025
手游攻略
Tales Of Graces F 重製版:所有鎖定的寶箱密碼
18 Jan 2025
手游攻略
如何修復 KB5049622 在 Windows 11 中安裝失敗的問題?
15 Jan 2025
故障排查
Haikyuu傳奇風格指南:完整列表和最佳選擇
25 Jan 2025
手游攻略
如何修復 KB5050021 在 Windows 11 中安裝失敗的問題?
15 Jan 2025
故障排查