题解 | #删除字符串中出现次数最少的字符#

删除字符串中出现次数最少的字符

https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9

import java.util.*;

public class Main {
    public static void main(String[] args) {
        //输入
        Scanner sc=new Scanner(System.in);
        String str=sc.nextLine();
        
        //新建map集合统计每个字符出现的次数
        Map<Character,Integer> map=new HashMap<>();
        char[] chars = str.toCharArray();
        for (char ch : chars) {
            map.put(ch,map.getOrDefault(ch,0)+1);
        }
        
        //计算最小出现次数
        Collection<Integer> values = map.values();
        Integer min = Collections.min(values);
        
        //遍历集合,删除出现最小次数的字符
        Set<Map.Entry<Character,Integer>> set=map.entrySet();
        Iterator<Map.Entry<Character, Integer>> it = set.iterator();
        while (it.hasNext()){
            Map.Entry<Character, Integer> next = it.next();
            Character key=next.getKey();
            Integer value = next.getValue();
            if (value==min){
                str = str.replaceAll(key.toString(), "");
            }
        }
        System.out.println(str);
    }
}

全部评论

相关推荐

10-13 17:47
门头沟学院 Java
wulala.god:图一那个善我面过,老板网上找的题库面的
点赞 评论 收藏
分享
10-30 10:16
南京大学 Java
龚至诚:给南大✌️跪了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务