排序

中兴笔试:基于一个数组中的元素出现的频率对数组进行排序,出现频率从大到小进行排序
全部评论
std::vector<int>Sort(std::vector<int>&arr) { assert(!arr.empty()); std::unordered_map<int, int>freqMap; for (auto it : arr) { auto iter = freqMap.find(it); if (iter != freqMap.end()) { freqMap[it]++; } else freqMap[it] = 1;   } std::sort(arr.begin(), arr.end(), [&freqMap](int lhs, int rhs){ return freqMap.at(lhs) > freqMap.at(rhs); }); return arr; }
点赞 回复 分享
发布于 2016-09-01 10:31
https://www.nowcoder.com/discuss/7880
点赞 回复 分享
发布于 2016-09-01 10:16
这个讨论区有这个帖子,可以搜一下“中兴笔试”
点赞 回复 分享
发布于 2016-09-01 10:14

相关推荐

06-19 19:06
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务