計數排序常用於純數字的排序,速度很快,也很實用
小資料採用計數排序,空間換時間
package sort;
//計數排序 常用於數字排序 用空間換時間策略
public
class
countintegersort
int min=
findmin
(arr)
;int max=
findmax
(arr)
;int
count=
newint
[max-min+1]
;//建立空陣列用來統計數字的次數。
for(
int i=
0;i)int index=0;
for(
int i=
0;i)else}}
private
static
intfindmax
(int
arr)
}return max;
}private
static
intfindmin
(int
arr)
}return min;
}}
計數排序java實現
計數排序 1.基本思想 計數排序是乙個非基於比較的排序演算法,該演算法於1954年由 harold h.seward 提出。它的優勢在於在對一定範圍內的整數排序時,它的效能甚至快於哪些o nlogn 的排序演算法。思路是開乙個長度為 maxvalue minvalue 1 的陣列,然後 分配。掃瞄一...
計數排序和桶排序(Java實現)
計數排序適用資料範圍 過程分析 網路流傳桶排序演算法勘誤 桶排序適用資料範圍 過程分析 常見的快速排序 歸併排序 堆排序 氣泡排序等屬於比較排序。在排序的最終結果裡,元素之間的次序依賴於它們之間的比較。每個數都必須和其他數進行比較,才能確定自己的位置。在氣泡排序之類的排序中,問題規模為n,又因為需要...
排序演算法 Java版 計數排序
計數排序通過將元素之間的大小差別轉化為陣列中下標距離進行排序,陣列下標距離代表兩元素差,陣列內的值代表這個大小的元素出現的次數 public class test int max integer.min value int min integer.max value 找出陣列中的最大最小值 for ...