排序 桶排序

2021-08-13 18:11:15 字數 754 閱讀 5917

首先,桶排序是一種簡單並且執行快的一種排序。

第一步,對五個數進行排序。程式如下:

#include

using namespace std;

int main()

//首先對陣列進行歸零

for(int j=1; j<=5; j++)

//將輸入的數的個數存入陣列中。

for(int k=1; k<=10; k++)

執行原理:桶排序,就是先把所有可能的數全部擺出,然後設定乙個數,這個數必須大於等於輸入數的最大值。然後如果有重複的數,陣列的值就在原來的基礎上加1.

輸出的時候如果這個數對應的陣列的值不為零,就將這個數輸出,個數等於對應陣列的大小。

如果是輸入未知個數的話,程式如下:

#include

using namespace std;

int main()

for(int j=1; j<=n; j++)

for(int g=1; g<=100; g++)

{for(int s=1; s<=a[g]; s++)

{cout《如果時不知道數的大小時,就可以根據題目要求確定陣列歸零時的陣列個數。(打到這裡覺得這個也可以避免,因為做題時題目一般會給出數的範圍emmmmmm)。

如果給出的數的範圍太大,可以在定義陣列時,在main函式外面定義,因為main函式是有記憶體的,如果定義陣列在外面,陣列的執行就不會受到main函式的影響。

2,在防止pe錯誤時不太好避免,因為無法確定第乙個輸出的數的大小。

排序演算法 桶排序

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

排序演算法 桶排序

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

排序之桶排序

本文以 啊哈!演算法 為教材,個人理解整理。例 老師要給5個小朋友進行打分,滿分為10分,要求將最終的分數從高到低排序後顯示出來。輸入 5 3 5 2 8 輸出 8 5 5 3 2 桶排序就像它的名字一樣和桶很相似,如分數的範圍為0 10,那就可以分為11個 桶 分別為 桶0,桶1,桶2,桶3,桶4...