题解 | #删除字符串中出现次数最少的字符#
删除字符串中出现次数最少的字符
https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String s=in.nextLine();
HashMap<Character,Integer> map=new HashMap<>();
for(int i=0;i<s.length();i++){
if(map.containsKey(s.charAt(i))){
Character key=s.charAt(i);
Integer value=map.get(key);
map.put(key,value+1);
}else{
map.put(s.charAt(i),1);
}
}
//根据value进行排序
Collection<Integer> values=map.values();
//找到最小的值
Integer min=Collections.min(values);
for(Character key:map.keySet()){
Integer value=map.get(key);
if(value==min){
//将字符换成”“
s=s.replaceAll(String.valueOf(key),"");
}
// System.out.print(key);
}
System.out.print(s);
}
}
查看8道真题和解析