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

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

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

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String s = in.nextLine();
            char[] chars = s.toCharArray();
            //利用HashMap来存储字符的出现次数
            Map<Character, Integer> map = new HashMap<>();
            for (char c : chars) {
                //这里用了map的方法
                map.put(c, map.getOrDefault(c, 0) + 1);
            }
            //找到出现次数最少的字符
            int min = 0;
            for (int times : map.values()) {
                if (min == 0) {
                    min = times;
                } else if (min > times) {
                    min = times;
                }
            }
            //输出结果
            StringBuffer result = new StringBuffer();
            for (char c : chars) {
                if (map.get(c).equals(min)) {
                    continue;
                }
                result.append(c);
            }
            System.out.println(result.toString());
        }
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务