在这里插入代码片
#include<string> #include<map> #include<vector> #include<algorithm> using namespace std; bool cmp(pair<char, int> a, pair<char, int> b) { return a.second < b.second; } int main() { string str="AAAbbbKhn"; map<char, int> tmp; vector< pair<char, int> > vec; for (int i = 0; i < str.size(); i++) { if (tmp.find(str[i]) != tmp.end()) { tmp[str[i]]++; } else { tmp[str[i]] = 1; } } for (map<char, int>::iterator it = tmp.begin(); it != tmp.end(); it++) { vec.push_back(make_pair(it->first, it->second)); } sort(vec.begin(), vec.end(),cmp); for (vector<pair<char, int> >::iterator it = vec.begin(); it != vec.end(); ++it) { cout << it->first << '\t' << it->second << endl; } return 0; }