题解 | #字符统计#

字符统计

https://www.nowcoder.com/practice/c1f9561de1e240099bdb904765da9ad0

import java.util.HashMap;
import java.util.Scanner;
import java.util.TreeMap;
import java.util.TreeSet;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String source = sc.nextLine();
        HashMap<Character, Integer> charNum = new HashMap<>();
        for (char c : source.toCharArray()) {
            if (charNum.containsKey(c)) {
                charNum.put(c, charNum.get(c) + 1);
            } else {
                charNum.put(c, 1);
            }
        }
        TreeMap<Integer, TreeSet<Character>> statisticChars = new TreeMap<>((o1, o2) -> o2-o1);
        charNum.forEach((character, num) -> {
            if (statisticChars.containsKey(num)) {
                statisticChars.get(num).add(character);
            } else {
                TreeSet<Character> value = new TreeSet<>();
                value.add(character);
                statisticChars.put(num, value);
            }
        });

        for (TreeSet<Character> value : statisticChars.values()) {
            for (Character character : value) {
                System.out.print(character);
            }
        }
    }
}

全部评论

相关推荐

03-01 21:45
中北大学 Python
孤蓝长空:请你说一下为什么你用websocket而不是http,请你说一下什么是rpc,为什么用rpc,你的rpc的传输协议是JSON,xml还是什么 请你描述一下你的鉴权流程(完整的) 我问的是第二个项目,随便问的哈哈哈
开工第一帖
点赞 评论 收藏
分享
01-30 22:03
门头沟学院 Java
用微笑面对困难:我滴妈,【俩月】【实习】【主管】仨debuff吃满了,独立设计开发的项目写了绝大占比的运营板块,你独立开发,那维护、问题复盘、日志更新、bug、策划书全是自己整的? 不建议写那么大,可以从小出发更容易
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务