题解 | #删除字符串中出现次数最少的字符#
删除字符串中出现次数最少的字符
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的解析结合