题解 | #字符统计#
字符统计
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); } } } }