C++ map容器按value值排序
思路:将map的key值和value值分别放在pair类型的vector中,构造比较函数cmp:bool cmp(const pair<string,int> &p1, const pair<string,int> &p2) {return p1.second > p2.second;}假设已有一
·
思路:将map的key值和value值分别放在pair类型的vector中,构造比较函数cmp:
bool cmp(const pair<string,int> &p1, const pair<string,int> &p2) {
return p1.second > p2.second;
}
假设已有一组map<string,int>类型的数mp,则具体实现过程为:
vector<pair<string,int> > vpr;
for(map<string,int>::iterator it = mp.begin(); it != mp.end(); it++){
vpr.push_back(make_pair(it->first,it->second);
}
sort(vpr.begin(),vpr.end(),cmp);
更多推荐
已为社区贡献1条内容
所有评论(0)