前 K 个高频元素
给定一个非空的整数数组,返回其中出现频率前 k 高的元素。
示例 1:
输入: nums = [1,1,1,2,2,3], k = 2
输出: [1,2]
示例 2:
输入: nums = [1], k = 1
输出: [1]
方案
function getMap(arr) {
let obj = {};
for(let key in arr){
if(!obj[arr[key]]){
obj[arr[key]] = 1
}
else{
obj[arr[key]] = obj[arr[key]] + 1
}
}
return obj
}
var map = getMap();
function getArr(k) {
let arr = []
for(let key in map){
arr[map[key]] = Number(key)
}
arr = arr.filter(item => {
return item != '' || typeof item != 'undefined'
})
arr = arr.reverse()
var result = arr.slice(0, k)
return result
}