<?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 最高的排序欄位
本站所有資源皆由網(wǎng)友貢獻(xiàn)或各大下載網(wǎng)站轉(zhuǎn)載。請自行檢查軟體的完整性!本站所有資源僅供學(xué)習(xí)參考。請不要將它們用於商業(yè)目的。否則,一切後果都由您負(fù)責(zé)!如有侵權(quán),請聯(lián)絡(luò)我們刪除。聯(lián)絡(luò)方式:admin@php.cn
相關(guān)文章

18 Jan 2025
QuickSort 演算法詳解:高效率的排序利器 快速排序 (QuickSort) 是一種基於分治策略的高效排序演算法。分治法將問題分解成更小的子問題,分別解決這些子問題,然後組合子問題的解得到最終解。在快速排序中,陣列透過選擇一個(gè)分區(qū)元素來劃分,該元素決定數(shù)組的分割點(diǎn)。在劃分之前,分區(qū)元素的位置會(huì)重新排列,使其位於大於它的元素之前,小於它的元素之後。左右子數(shù)組將以這種方式遞歸劃分,直到每個(gè)子數(shù)組只包含一個(gè)元素,此時(shí)數(shù)組已排序。 快速排序工作原理 讓我們以升序排序以下數(shù)組為例: 步驟 1:選擇樞軸元

04 Jan 2025
快速排序是最有效的演算法之一,它使用分治技術(shù)對陣列進(jìn)行排序。 快速排序的工作原理 快速排序的主要想法是幫助一次將一個(gè)元素移動(dòng)到未排序的正確位置。

21 Jan 2025
在計(jì)算機(jī)科學(xué)領(lǐng)域,快速排序是最有效且使用最廣泛的排序演算法之一。其對大數(shù)據(jù)集排序的驚人速度歸功於其「Split to Split」策略。

26 Dec 2024
快速排序簡介 在廣闊的演算法和資料結(jié)構(gòu)世界中,快速排序是最優(yōu)雅、最高效的排序方法之一。其簡單性和有效性使其成為開發(fā)人員和研究人員的最愛


熱門工具標(biāo)籤

熱工具

依賴注入容器的PHP庫
依賴注入容器的PHP庫

50個(gè)優(yōu)秀經(jīng)典PHP演算法大集合
經(jīng)典PHP演算法,學(xué)習(xí)優(yōu)秀的想法 , 開拓思維

小巧的最佳化圖片的PHP庫
小巧的最佳化圖片的PHP庫
