Java语言使用HashMap遍历实现
删除字符串中出现次数最少的字符
https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9
此题需要统计字符串中某个字符出现的个数并且技术,同时输出删除某个特定字符后的字符串,首先想到使用HashMap进行计数并且调用String对象的replaceAll()方法来完成字符串生成,Java代码如下
public class Algorithm { public static void main(String[] args) { Scanner sc = new Scanner(System.in); HashMap<Character, Integer> hm = new HashMap<>(); String input = sc.nextLine(); for (char c : input.toCharArray()){ hm.put(c, hm.getOrDefault(c, 0) + 1); } int min = Integer.MAX_VALUE; for (Map.Entry<Character, Integer> me : hm.entrySet()){ if (me.getValue() < min){ min = me.getValue(); } } for (Map.Entry<Character, Integer> me2 : hm.entrySet()){ if (me2.getValue() == min){ input = input.replaceAll(me2.getKey().toString(), ""); } } System.out.println(input); } }