E 超排序(桶排)

2021-10-04 02:11:10 字數 834 閱讀 2711

description

blue 在跨年之際獲得了乙份小禮物,裡面裝了一串只包含大寫字母和小寫字母的字串,如果你能幫 blue 把這個字串按照字典序排序(按 ascii 碼從小到大排序。大寫字母的 ascii 碼小於小寫字母的 ascii 碼),他會獎勵你乙個 accepted。

input

輸入資料有多組(資料組數不超過 50),到 eof 結束。

對於每組資料,輸入一行只包含大寫字母和小寫字母的字串,且長度不超過 1000000。

output

對於每組資料,輸出一行排序後的字串。

sample

input

hnyaaeepprwy

aaabbaaabbbcd

hint

由於資料量較大,不推薦直接使用 cin, cout 輸入輸出。

另外,請確保最終結果是直接輸出整個字串,而非使用 printf("%c") 或 putchar() 等函式乙個乙個地輸出字元,否則可能導致超時。

#include

#include

char s[

1000010];

int bu[

1000];

intmain()

int cnt =0;

for(

int i=

'a';i<=

'z';i++)}

for(

int i=

'a';i<=

'z';i++)}

printf

("%s\n"

,s);

}return0;

}

排序演算法 桶排

時間複雜度最少的排序演算法之一桶排,線性階,具體原始碼如下 public class tongpai int max findmax arr int min findmin arr int cha max min 所要排序陣列的最大值和最小值的差 int tong new int cha 1 創造桶...

基數排序 桶排

基本思想 將所有待比較數值 正整數 統一為同樣的數字長度,數字較短的數前面補零。然後,從最低位開始,依次進行一次排序。這樣從最低位排序一直到最高位排序完成以後,數列就變成乙個有序序列。複雜度和穩定性情況 演算法步驟 基數排序的方式可以採用 lsd least significant digital ...

9 排序演算法 桶排序

桶排序是計數排序的公升級版。它利用了函式的對映關係,高效與否的關鍵就在於這個對映函式的確定。為了使桶排序更加高效,我們需要做到這兩點 在額外空間充足的情況下,盡量增大桶的數量 使用的對映函式能夠將輸入的 n 個資料均勻的分配到 k 個桶中 同時,對於桶中元素的排序,選擇何種比較排序演算法對於效能的影...