题解 | #删除字符串中出现次数最少的字符#
删除字符串中出现次数最少的字符
https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9
java实现:
1、将字符存入map(字符为key值,value为字符出现次数);
2、找出最小的map.value值;
3、比对字符串与map最小的value值对应的字符,不等则输出;
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Map; import java.util.HashMap; public class Main{ public static void main(String[] args) throws Exception{ BufferedReader read = new BufferedReader(new InputStreamReader(System.in)); String str = read.readLine(); int min = Integer.MAX_VALUE; Map<Character,Integer> map = new HashMap<Character,Integer>(); for(int i=0;i<str.length();i++){ char c = str.charAt(i); if(map.containsKey(c)){ map.put(c,map.get(c)+1); }else{ map.put(c,1); } } for(int j=0;j<str.length();j++){ int val = map.get(str.charAt(j)); if(val<min){ min = map.get(str.charAt(j)); } } for(int m=0;m<str.length();m++){ if(map.get(str.charAt(m)) != min){ char ch = str.charAt(m); System.out.print(str.charAt(m)); } } } }