自定义Map.Entry的Comperator实现字符频率降序排序
2024-10-12 22:13:38
leetCode (#451,middle) java实现
class Solution {
public String frequencySort(String s) {
Map<Character,Integer> map = new HashMap<>(); //放入map
for(char c :s.toCharArray()){
if(map.containsKey(c)){
map.put(c,map.get(c)+1);
}else
map.put(c,1);
}
//根据value的大小排序
Comparator<Map.Entry<Character,Integer>> comparator =
new Comparator<Map.Entry<Character, Integer>>() {
@Override
public int compare(Map.Entry<Character, Integer> o1, Map.Entry<Character, Integer> o2) {
return o2.getValue() - o1.getValue();
}
};
//放入链表
List<Map.Entry<Character,Integer>> list = new ArrayList<>(map.entrySet());
//根据实现的comp排序
Collections.sort(list,comparator);
//定义数组
StringBuilder sb = new StringBuilder();
for(Map.Entry<Character,Integer> entry : list){
for(int i = 0 ; i < entry.getValue();i++){
sb.append(entry.getKey());
}
}
return sb.toString(); }
}
最新文章
- Web APi之异常处理(Exception)以及日志记录(NLog)(十六)
- 球谐光照(Spherical Harmonics Lighting)及其应用-实验篇
- 被碾压过得Samsung SCH-W319 的取证恢复
- Webpack、Browserify和Gulp
- webpack-vue搭建,部署到后端
- iOS阶段学习第28天笔记(UIView的介绍)
- Linux 开机 logo 修改
- PowerShell脚本:随机密码生成器
- SVG 2D入门12 - SVG DOM
- Visual SVN Server启动失败0x8007042a错误
- BS模式的模型结构详解
- iMac一体机安装苹果和Win7双系统
- 黄聪:wordpress如何使用wp_rewrite实现自定义伪静态,非301重定向。
- C++primer 练习15.26
- iOS Developer Libray (中文版)-- About Objective-C
- AFNetwork学习(二)——GET/POST请求
- C++中的#pragma 预处理指令详解
- STM32中断优先级理解
- SQL Server 备份所有数据库代码
- php中datetime时间和int时间互相转换