Top K Frequent Elements《leetcode》
发布日期:2022-02-21 17:40:30
浏览次数:48
分类:技术文章
本文共 729 字,大约阅读时间需要 2 分钟。
class Solution {public: vector topKFrequent(vector & nums, int k) { int len=nums.size(); vector res; unordered_maptmap;//初始化第二个int值都为0 for(int num:nums) { tmap[num]++; }//这边存的值为 = <值,个数> priority_queue 值,个数> ,vector >,less >> p;//priority_queue ,vector >,greater >> p; //从小到大排序 //但我这里只有n-k个数需要排序即O(lg(n-k)),遍历n次,那么是O(nlg(n-k)) //默认比较第一个数 for(auto it=tmap.begin();it!=tmap.end();it++) { p.push(make_pair(it->second,it->first));//make_pair/需要插入让其比较次数 if(p.size()>((int)tmap.size()-k)) { res.push_back(p.top().second); p.pop(); } } return res; }};//还有种方法是,维持一个最大堆,跟这个情况一样
转载地址:https://blog.csdn.net/weixin_40599276/article/details/89004154 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月08日 00时22分57秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Vue模板语法---vue工作笔记0003
2019-04-26
Vue计算属性之基本使用---vue工作笔记0004
2019-04-26
Vue监视---vue工作笔记0005
2019-04-26
Vue条件渲染---vue工作笔记0008
2019-04-26
Vue事件处理_vue的事件处理超级方便_功能强大---vue工作笔记0011
2019-04-26
Vue表单数据自动收集---vue工作笔记0012
2019-04-26
Vue生命周期---vue工作笔记0013
2019-04-26
C++_类和对象_对象特性_构造函数的分类以及调用---C++语言工作笔记041
2019-04-26
C++_类和对象_对象特性_拷贝构造函数调用时机---C++语言工作笔记042
2019-04-26
C++_类和对象_对象特性_构造函数调用规则---C++语言工作笔记043
2019-04-26
C++_类和对象_对象特性_深拷贝与浅拷贝---C++语言工作笔记044
2019-04-26
AndroidStudio_android中实现对properties文件的读写操作_不把properties文件放在assets文件夹中_支持读写---Android原生开发工作笔记238
2019-04-26