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

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

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

import java.util.Scanner;
//将所有出现的小写字母计数,a[0]代表a,a[25]代表z
//找出最少但大于0的数
//找是否有重复数,如有,一并记录
//对被标记为最少的字母进行清除。
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = new String(sc.nextLine());
        System.out.println(fun(str));
    }
    public static String fun(String str) {
        int[] arr = new int[26];
        for (int i = 0; i < str.length(); i++) {
            int chtemp = str.charAt(i) - 97;
            arr[chtemp]++;
        }
        int minvalue = 0;
        for (int i = 0; i < 26; i++) {
            if ((arr[i] > 0 && arr[i] < minvalue) || (arr[i] > 0 && minvalue == 0))
                minvalue = arr[i];
        }
        int[] arrtemp = new int[26];
        for (int i = 0; i < 26; i++) {
            if (arr[i] == minvalue) {
                arrtemp[i] = 1;
            }
        }
        char[]  ch = new char[str.length()];
        int temp1 = 0;
        int j = 0;
        for (int i = 0; i < str.length(); i++) {
            if (arrtemp[str.charAt(i) - 97] != 1) {
                ch[j] = str.charAt(i);
                j++;
                temp1++;
            }
        }
        char[] ch1 = new char[temp1];
        for (int i = 0; i < temp1; i++) {
            ch1[i] = ch[i];
        }
        return new String(ch1);
    }
}

全部评论

相关推荐

11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务