演算法筆記 桶排序

2021-09-20 13:32:24 字數 463 閱讀 6042

今天做leetcode 164最大間距的時候,看到這種具有線性時間複雜度的排序方法。第一次看這個演算法,真是驚掉了下巴,排序演算法還真是博大精深啊,之前我的部落格也總結了不少排序演算法,自認為對排序也算是略懂一點,沒想到還是不斷有經典常用的排序演算法重新整理我對排序演算法的認識。

桶排序,簡單來說,就是一種用空間換時間的排序的方法,我們通過多放置「桶」,掃瞄需要排序的陣列的時候把元素放到對應的桶中,之後對於每個桶中的元素(應該極少),選擇一種排序方法進行桶內排序,最後從左到右把桶內的元素組合,構成有序的序列。下面的這個**生動地體現了這個過程。

複雜度分析

**參考:演算法——排序演算法之桶排序

演算法筆記 簡單桶排序

假設班上有5個同學,這學期期末考試,這5個同學分別考了5分 3分 5分 2分 8分,滿分是10分。接下來將分數從大到小排序,排序後是8 5 5 3 2。簡單桶排序 void barrelsort for i 1 i 5 i 從大到小輸出 for i 10 i 0 i printf n 從小到大輸出 ...

排序演算法 桶排序

桶排序 bucket sort 或所謂的箱排序,是乙個排序演算法,工作的原理是將陣列分到有限數量的桶子裡。每個桶子再個別排序 有可能再使用別的排序演算法或是以遞迴方式繼續使用桶排序進行排序 桶排序是鴿巢排序的一種歸納結果。當要被排序的陣列內的數值是均勻分配的時候,桶排序使用線性時間 n 但桶排序並不...

排序演算法 桶排序

2009 12 02 12 01 2817人閱讀 桶排序 bucket sort 或所謂的箱排序,是乙個排序演算法,工作的原理是將陣列分到有限數量的桶子裡。每個桶子再個別排序 有可能再使用別的排序演算法或是以遞迴方式繼續使用桶排序進行排序 桶排序是鴿巢排序的一種歸納結果。當要被排序的陣列內的數值是均...