【算法】桶排序
2024/04/08 11:08:11
桶排序
桶排序 (Bucket Sort)是一种排序算法,其工作原理是将数组分到有限数量的桶子里,每个桶子再个别进行排序。这种算法是鸽巢排序 的一种归纳结果。当要被排序的数组内的数值是均匀分配的时候,桶排序可以使用线性时间进行排序。
算法题目
- 215.数组中的第 k 个最大元素.js
var findKthLargest = function (nums, k) {
let bucket = [];
for (let i = 0; i < nums.length; i++) {
if (!bucket[nums[i] + 10000]) {
bucket[nums[i] + 10000] = 0;
}
bucket[nums[i] + 10000]++;
}
for (let j = 20000; k > 0 && j > 0; j--) {
if (bucket[j] > 0) {
console.log(bucket[j]);
k -= bucket[j];
}
if (k <= 0) {
return j - 10000;
}
}
};