12. 删除字符串中出现次数最少的字符
删除字符串中出现次数最少的字符,如果多个字符出现次数一样则都删除,如果都被删除 则换为empty。
例子:
输入
abcdd
字符串中只
输出
dd
输入
aabbccdd
输出
empty
查看代码
import java.util.*;
public class Demo12 {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
HashMap<Character, Integer> map = new HashMap<>();
for(char c : line.toCharArray()){ //好活
map.put(c, map.containsKey(c) ? map.get(c) + 1 : 1);
}
Integer[] arr = new Integer[map.values().size()];
map.values().toArray(arr);
Arrays.sort(arr);
int min = arr[0];
for(Map.Entry<Character, Integer> entry : map.entrySet()){
if(entry.getValue() == min)
line = line.replaceAll(entry.getKey() + "", "");
}
System.out.println(line.length() == 0 ? "Empty" : line);
}
}
总结:熟练掌握集合和数组之间的转换,了解各种数据结构的功能特点,及不同数据结构之间的搭配协作。