首頁 PHP 函式庫 其它類別庫 快速排序演算法的php類
快速排序演算法的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範例) 了解快速排序演算法(附Java範例)

18 Jan 2025

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

學習快速排序演算法 學習快速排序演算法

04 Jan 2025

快速排序是最有效的演算法之一,它使用分治技術對陣列進行排序。 快速排序的工作原理 快速排序的主要想法是幫助一次將一個元素移動到未排序的正確位置。

了解快速排序演算法:分而治之 了解快速排序演算法:分而治之

21 Jan 2025

在計算機科學領域,快速排序是最有效且使用最廣泛的排序演算法之一。其對大數據集排序的驚人速度歸功於其「Split to Split」策略。

掌握快速排序:計算機科學的基本演算法 掌握快速排序:計算機科學的基本演算法

26 Dec 2024

快速排序簡介 在廣闊的演算法和資料結構世界中,快速排序是最優雅、最高效的排序方法之一。其簡單性和有效性使其成為開發人員和研究人員的最愛

為什麼要從 Python 中的「object」繼承:一個類別繼承問題 為什麼要從 Python 中的「object」繼承:一個類別繼承問題

24 Dec 2024

了解 Python 類別繼承在 Python 中,類別可以從其他類別繼承,這使它們能夠存取父類別的屬性並...

如何在 Linux 上建立和使用動態共用 C 類別庫? 如何在 Linux 上建立和使用動態共用 C 類別庫?

05 Dec 2024

在 Linux 上建立和使用動態共用 C 類別庫建立共用類別庫要建立共用 C 類別庫,您可以依照...

See all articles