基数排序-JavaScript
基数排序
基数排序是一种排序算法,该算法通过按共享相同有效位和值的单个数字对键进行分组,对带有整数键的数据进行排序。
我们需要编写一个JavaScript函数,该函数以文字数组作为唯一参数。该函数应使用基数排序算法以升序或降序对数组进行排序。
示例
以下是代码-
输出结果const arr = [45, 2, 56, 2, 5, 6, 34, 1, 56, 89, 33];
const radixSort = (arr = []) => {
const base = 10;
let divider = 1;
let maxVal = Number.NEGATIVE_INFINITY;
while (divider === 1 || divider <= maxVal) {
const buckets = [...Array(10)].map(() => []);
for (let val of arr) {
buckets[Math.floor((val / divider) % base)].push(val);
maxVal = val > maxVal ? val : maxVal;
}
arr = [].concat(...buckets);
divider *= base;
};
return arr;
};
console.log(radixSort(arr));
以下是控制台上的输出-
[
1, 2, 2, 5, 6,
33, 34, 45, 56, 56,
89
]
热门推荐
2 家长会简短祝福语
10 中秋祝福语简短有深度
11 感恩跨年祝福语大全简短
12 10岁高考祝福语简短
13 开工红包祝福语毕业简短
14 企业新春祝福语简短大全
15 婚礼远方嘉宾祝福语简短
16 女友妈妈生日祝福语简短
17 哈尼族祝福语简短
18 小班小孩生日祝福语简短