计数排序
// 计数排序(0,正整数)
function countingSort(arr) {
var len = arr.length;
var maxNum = Math.max.apply({}, arr);
var bucket = Array(maxNum + 1).fill(0);
var newArr = [];
for(var i = 0;
i < len;
i++) {
bucket[arr[i]]++;
}
for(var j = 0;
j <= maxNum;
j++) {
while(bucket[j] > 0) {
newArr.push(j);
bucket[j]--;
}
}
return newArr;
}
countingSort.gif
推荐阅读
- 一个选择排序算法
- 排序(归并排序)
- 【图解】9张图彻底搞懂堆排序
- vue|vue 上移 下移 删除 排序
- 必须掌握的八种基本排序算法
- 【排序】插入排序算法
- 排序之冒泡和选择
- 2019-03-02|2019-03-02 排序
- Java数据结构与算法(十)排序算法01
- 不为人知的排序和筛选用法