計數排序:排序
對於比較密集的整數,好比全校學生的成績(0-100),直接放入101個桶(計數器),設置桶寬爲1便可,穩定排序。數據
基數排序:時間
對於已知長度的整數,好比三位數,能夠先排序個位數,而後十位數,而後百位數(不是從上往下排),穩定排序。
桶排序:
對於[0,1),這樣的double型均勻分佈,能夠採用桶排序,桶內採用快排等其餘排序思路,穩定排序。
題目:從100G個32位int數據裏取出中位數
解答:32無符號int最多隻能表示4G的數據,所以能夠劃出1M個桶,每一個桶寬度爲4K,讀入數據,對每一個桶進行計數排序(須要用long類型計數),找到中位桶,以及中位數在其的位置,而後對中位桶進行計數排序便可,需兩趟讀取,時間複雜度2N。