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

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

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);
    }
}

全部评论

相关推荐

Java抽象带篮子:简历怎么写可以看看我发的帖子,你的第一个是实习经历吗?那怎么写的是你的第一个练手项目呢?简历写的怎么样直接投小厂面试一下就知道了
没有实习经历,还有机会进...
点赞 评论 收藏
分享
06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务