力扣-栈与队列-347 前k个高频元素

思路

利用优先队列进行排序,然后利用multiset对count进行排序,最后收集k个高频元素就行

代码

cpp 复制代码
class Solution {
public:

    vector<int> topKFrequent(vector<int>& nums, int k) {
        priority_queue<int> pq;
        for(int i = 0; i < nums.size(); i++){
            pq.push(nums[i]);
        }
        multimap<int, int > myMap;
        while(!pq.empty()){
            int count = 0;
            int value = pq.top();
            while(!pq.empty() && pq.top() == value){
                pq.pop();
                count++;
            }
            pair<int, int> p = {count, value};
            myMap.insert(p);
        }
        vector<int> res;
        for(auto it = myMap.rbegin(); k-- ; it++){
            res.push_back(it->second);
        }
        
        return res;

    }
};
相关推荐
森焱森40 分钟前
APM与ChibiOS系统
c语言·单片机·算法·架构·无人机
★Orange★1 小时前
Linux Kernel kfifo 实现和巧妙设计
linux·运维·算法
尘世闲鱼1 小时前
解数独(C++版本)
开发语言·c++·算法·解数独
qqxhb1 小时前
零基础数据结构与算法——第四章:基础算法-排序(中)
数据结构·算法·排序算法·归并·快排·堆排
木叶丸2 小时前
编程开发中,那些你必须掌握的基本概念
前端·数据结构·编程语言
Y1nhl2 小时前
力扣_链表_python版本
开发语言·python·算法·leetcode·链表·职场和发展
qq_401700413 小时前
C语言中位运算以及获取低8位和高8位、高低位合并
c语言·开发语言·算法
CoovallyAIHub3 小时前
YOLO模型优化全攻略:从“准”到“快”,全靠这些招!
深度学习·算法·计算机视觉
闻缺陷则喜何志丹3 小时前
【BFS】 P10864 [HBCPC2024] Genshin Impact Startup Forbidden II|普及+
c++·算法·宽度优先·洛谷
MicroTech20253 小时前
微算法科技(NASDAQ: MLGO)探索Grover量子搜索算法,利用量子叠加和干涉原理,实现在无序数据库中快速定位目标信息的效果。
数据库·科技·算法