<?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 要排序的數(shù)組
@param int $low ?最低的排序子段
@param int $high 最高的排序字段
本站所有資源均由網(wǎng)友貢獻或各大下載網(wǎng)站轉(zhuǎn)載。請自行檢查軟件的完整性!本站所有資源僅供學(xué)習(xí)參考。請不要將它們用于商業(yè)目的。否則,一切后果由您負責!如有侵權(quán),請聯(lián)系我們刪除。聯(lián)系方式:admin@php.cn
相關(guān)文章

04 Jan 2025
快速排序是最有效的算法之一,它使用分治技術(shù)對數(shù)組進行排序。 快速排序的工作原理 快速排序的主要思想是幫助一次將一個元素移動到未排序的正確位置。

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

11 Jul 2018
這篇文章主要介紹了關(guān)于JavaScript實現(xiàn)快速排序的算法思想,有著一定的參考價值,現(xiàn)在分享給大家,有需要的朋友可以參考一下

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


熱工具

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

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

小巧的優(yōu)化圖片的PHP庫
小巧的優(yōu)化圖片的PHP庫
