实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。
删除字符串中出现次数最少的字符后的字符串。
abcdd
dd
1 #include <iostream> 2 #include <string> 3 #include <algorithm> 4 using namespace std; 5 int main() 6 { 7 string str; 8 while(cin >> str) { 9 int minFreq = 20; 10 int freq[26] = {0}; 11 for(char c : str) { 12 ++freq[c - ‘a‘]; 13 } 14 for(int i = 0; i < 26; ++i) { 15 if(freq[i]) minFreq = min(minFreq, freq[i]); 16 } 17 for(int i = 0; i < str.size(); ++i) { 18 if(freq[str[i]-‘a‘] != minFreq) cout << str[i]; 19 } 20 cout << endl; 21 } 22 }
原文:https://www.cnblogs.com/joker1937/p/10662049.html