美文网首页
阿里一面直挂题

阿里一面直挂题

作者: leon4ever | 来源:发表于2018-03-31 12:24 被阅读8次

给定一个巨大的无序数组,输出数组中出现次数最多的K个数。

思路很简单,TopN问题,真的是足够简单了,然而我还是写了半天,还特么没写对


class Solution{

//默认是最大堆,重载一下操作符(反过来的),就能实现最小堆
struct cmp{
    bool operator()(const pair<int ,int>& a, const pair<int, int>& b){
        return a.second > b.second;
}
};

public:
vector<int> findtopN(vector<int>& num, int N){
    unordered_map<int, int> hmap;
    for(int value : num)
        hmap[value]++;
    priority_queue<pair<int, int>, vector<pair<int, int>>, cmp> heap;
    auto iter = hmap.begin();
    for(int i = 0; i < N ; i++, iter++){
        heap.push(*iter);
    }
    for( ; iter!=hmap.end(); iter++){
        if(iter->second > heap.top().second){
                heap.pop();
                heap.push(*iter);
          }
      }
    vector<int> result;
    while(!heap.empty()){
        result.push_back(heap.top().first);
        heap.pop();
      }
    sort(result.begin(), result.end());
    return result;
}
};

···

相关文章

  • 阿里一面直挂题

    给定一个巨大的无序数组,输出数组中出现次数最多的K个数。 思路很简单,TopN问题,真的是足够简单了,然而我还是写...

  • 阿里Java研发面经(已拿offer!)

    从四月开始一直准备实习面试,经历过TX HR面挂,阿里内推简历面挂(第一面就是阿里 简历面紧张的话都不会说)。最终...

  • 春招面试结果总结

    本菜鸡的春招: 有面试的:(16家)按挂的顺序 头条:二面挂 腾讯:内推流程一面挂,正式流程一面挂 阿里:二面挂 ...

  • 阿里一面 目测已挂

    这次阿里拜的原因主要是在面试前经历了好几次狼来了的游戏,每次打来电话都以为是面试,结果发现都不是,所以导致我以为这...

  • 社招阿里,字节,拼多多,滴滴面挂经历总结

    阿里: 投递部门:阿里云智能事业群投递岗位:Java开发专家面试结果: 二面挂 一面(电面): 面试官因为是我...

  • 阿里面试

    人生第一面,之前一直在忙阿里天池的比赛,而且对自己没啥信心,所以没有好好准备,题回答的不好。这些是我记下来的题目,...

  • 2015-9-14 阿里面试

    阿里,大概半小时。(投的是 Java 研发,一面挂) 自我介绍后,面试官问了我擅长 C++ 却报 Java 岗位的...

  • 阿里面试题-多线程按序打印

    背景 有朋友最近参加了阿里的面试,被问了一道线程同步的问题。偷偷跟你们说一下,阿里一面的最后都会问一道算法题,难度...

  • 阿里一面题目

    阿里一面 123456 => 123,456//下面瞎写的,正则题,想了下直接说的不会,正则得好好看看了repla...

  • 面试阿里技术专家岗,五面对答如流,原来大厂面试真的有题库!

    常言说,目标不是大厂的程序员不是好程序员! 话不多说,面经走起~ 阿里技术一面 一面就做了一道算法题,要求两小时内...

网友评论

      本文标题:阿里一面直挂题

      本文链接:https://www.haomeiwen.com/subject/nikmqftx.html