国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

347. Top K Frequent Elements

2019-11-14 09:38:47
字體:
來源:轉載
供稿:網友

Given a non-empty array of integers, return the k most frequent elements.

For example,

Given [1,1,1,2,2,3] and k = 2, return [1,2].

Note:

You may assume k is always valid, 1 ≤ k ≤ number of unique elements.Your algorithm’s time complexity must be better than O(n log n), where n is the array’s size.

使用unordered_map和PRiority_queue,時間復雜度O(n*lg(n-k))。

class Solution {public: vector<int> topKFrequent(vector<int>& nums, int k) { unordered_map<int, int> ump; for(auto num : nums) ump[num]++; vector<int> res; priority_queue<pair<int, int>> pq; for(auto it : ump){ pq.push(make_pair(it.second, it.first)); //pair<first, second>, in priority_queue ths first is frequency, second is number if(pq.size() > ump.size() - k){ res.push_back(pq.top().second); pq.pop(); } } return res; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 始兴县| 苏尼特右旗| 双鸭山市| 临江市| 吐鲁番市| 梓潼县| 和顺县| 林口县| 离岛区| 巴南区| 大洼县| 水富县| 仁化县| 华阴市| 前郭尔| 通河县| 洪泽县| 抚顺市| 沭阳县| 天台县| 文成县| 庆安县| 铜山县| 富平县| 兰溪市| 榆中县| 获嘉县| 葵青区| 久治县| 锦州市| 金坛市| 浙江省| 辉南县| 左权县| 伊春市| 镇坪县| 湖口县| 满城县| 阳春市| 巴林左旗| 夹江县|