LeetCode 451. Sort Characters By Frequency
用hash表记录每个字符的个数,开始我是新建了一个vector<pair<int,char>>然后依据个数排序。
后来发现可以直接对string排序。
其中运用了lambda表达式,利用引用捕获得到count。
class Solution { public: string frequencySort(string s) { vector<int> count(256); for (char ch:s) ++count[ch]; sort(s.begin(),s.end(),[&](char a, char b){return count[a]>count[b] || (count[a]==count[b] && a<b);}); return s; } };
关于Lambda,详见:

浙公网安备 33010602011771号