如何使用 JavaScript 实现计数排序? - 项越资源网-html css js 用法分享社区-开发交流-项越资源网

如何使用 JavaScript 实现计数排序?

/* 如何使用 JavaScript 实现计数排序? */
function countingSort(arr, maxValue) {
  var bucket = new Array(maxValue + 1),
    sortedIndex = 0,
    arrLen = arr.length,
    bucketLen = maxValue + 1;
  for (var i = 0; i < arrLen; i++) {
    if (!bucket[arr[i]]) {
      bucket[arr[i]] = 0;
    }
    bucket[arr[i]]++;
  }
  for (var j = 0; j < bucketLen; j++) {
    while (bucket[j] > 0) {
      arr[sortedIndex++] = j;
      bucket[j]--;
    }
  }
  return arr;
}
请登录后发表评论

    没有回复内容