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

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

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

  1. 可以循环找出除0得最大值。
  2. 删除的时候也要while(n--)得去做删除
#include<bits/stdc++.h>

using namespace std;

int main(){
    string s;
    while(cin>>s){
        int ch[128]={0};
        for(int i =0; i< s.size();i++){
            ch[s[i]]++;
        }

        int k = INT_MAX;
        for(int i=0; i< 128;i++){

            if(ch[i]<k&&ch[i]!=0){
                k = ch[i];
            }
        }

        for(int i=0; i< 128;i++){
            if(ch[i]==k){
                char a = i;
                int n = k;
                while(n--){
                    s.erase(s.find(a),1);//一个,注意1.
                }


            }
        }

        cout<<s<<endl;
    }


}
剑指Offer 文章被收录于专栏

剑指offer的解析结合

全部评论

相关推荐

头像
10-09 19:35
门头沟学院 Java
洛必不可达:java的竞争激烈程度是其他任何岗位的10到20倍
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务