版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhao3132453/article/details/89160474
题目描述:
示例代码:(仅供参考)
typedef std::pair<int, int> PAIR;
bool cmp_by_value(const PAIR& lhs, const PAIR& rhs)
{
return lhs.second > rhs.second;
}
class Solution
{
public:
vector<int> topKFrequent(vector<int>& nums, int k)
{
std::map<int, int> imap;
vector<int> ivec;
for (int i=0;i!=nums.size();i++)
{
if (std::find(nums.begin(),nums.end(),nums[i]) != nums.end())
{
imap[nums[i]]++;
}
else
{
imap.insert(std::make_pair(nums[i],i));
}
}
std::vector<PAIR> name_score_vec(imap.begin(), imap.end());
sort(name_score_vec.begin(), name_score_vec.end(), cmp_by_value);
for (int i = 0; i != k; ++i)
{
std::cout << name_score_vec[i].first;
ivec.push_back(name_score_vec[i].first);
}
return ivec;
}
};