题解 | #寻找第K大# JS ordered map 61ms

寻找第K大

http://www.nowcoder.com/practice/e016ad9b7f0b45048c58a9f27ba618bf

const counter = (a_or_s) => { let m = new Map(); for (const x of a_or_s) m.set(x, m.get(x) + 1 || 1); return m; };

function findKth(a, n, k) {
   a.sort((x, y) => y - x);
   let m = counter(a), i = 1;
   for (const [x, occ] of m) {
       if (i >= k) {
          return x;
       }
       i += occ;
   }
}

module.exports = {
    findKth : findKth
};
全部评论

相关推荐

对空六翼:你真幸运,碰见这么好的人,不像我,秋招的时候被室友骗进cx了
实习好累,可以辞职全力准...
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务