概述
class Solution {
public String frequencySort(String s) {
//使用字典统计每个元素的个数
HashMap<Character,Integer> map = new HashMap<>();
for(char chr : s.toCharArray() ){
if(map.containsKey(chr)){
map.put(chr,map.get(chr)+1);
}
else{
map.put(chr,1);
}
}
//建立大根堆
PriorityQueue<Map.Entry<Character, Integer>> pq = new PriorityQueue<>((e1, e2) -> e2.getValue() - e1.getValue());
//按照次数建立大根堆
pq.addAll(map.entrySet());
StringBuilder ans = new StringBuilder(s.length());
while(!pq.isEmpty()){
Map.Entry<Character,Integer> entry = pq.poll();
for(int i = 0 ;i < entry.getValue();i++){
ans.append(entry.getKey());
}
}
return ans.toString();
}
}
最后
以上就是正直身影为你收集整理的LeetCode451的全部内容,希望文章能够帮你解决LeetCode451所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复