题解 | #删除字符串中出现次数最少的字符#
删除字符串中出现次数最少的字符
http://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9
- 可以循环找出除0得最大值。
- 删除的时候也要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的解析结合


查看6道真题和解析