计数排序

2021-02-04  本文已影响0人  Volcaner
// 计数排序(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
上一篇 下一篇

猜你喜欢

热点阅读