题解 | #字符统计#
字符统计
http://www.nowcoder.com/practice/c1f9561de1e240099bdb904765da9ad0
import java.util.*;
public class Main {
static List<Integer> integers = new ArrayList<>();
static List<Character> characterList = new ArrayList<>();
static String str = "";
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine();
Map<Character,Integer> map = new HashMap<>();
char[] chars = s.toCharArray();
for (char c : chars) {
map.put(c,map.getOrDefault(c,0)+1);
}
Set<Character> set = map.keySet();
for (Character character : set) {
characterList.add(character);
}
Collections.sort(characterList);
for (Character character : characterList) {
integers.add(map.get(character));
}
for (int i = 0; i < integers.size(); i++) {
maxNum(integers);
}
System.out.println(str);
}
private static int maxNum(List<Integer> integers) {
int max = integers.get(0);
for (int i = 0; i < integers.size(); i++) {
max = Math.max(max, integers.get(i));
}
int i = integers.indexOf(max);
integers.set(i,-1);
str = str+String.valueOf(characterList.get(i));
return max;
}
}
public class Main {
static List<Integer> integers = new ArrayList<>();
static List<Character> characterList = new ArrayList<>();
static String str = "";
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine();
Map<Character,Integer> map = new HashMap<>();
char[] chars = s.toCharArray();
for (char c : chars) {
map.put(c,map.getOrDefault(c,0)+1);
}
Set<Character> set = map.keySet();
for (Character character : set) {
characterList.add(character);
}
Collections.sort(characterList);
for (Character character : characterList) {
integers.add(map.get(character));
}
for (int i = 0; i < integers.size(); i++) {
maxNum(integers);
}
System.out.println(str);
}
private static int maxNum(List<Integer> integers) {
int max = integers.get(0);
for (int i = 0; i < integers.size(); i++) {
max = Math.max(max, integers.get(i));
}
int i = integers.indexOf(max);
integers.set(i,-1);
str = str+String.valueOf(characterList.get(i));
return max;
}
}