直接使用 sort
函数进行排序或者利用哈希表来解题都可以,哈希表相当于空间换时间,复杂度O(N)。
使用 sort 排序
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main() {
string str;
getline(cin, str);
sort(str.begin(), str.end(), [](char a, char b) {
return int(a) < int(b);});
cout << str << endl;
return 0;
}
使用哈希表
#include <iostream>
#include <string>
#include <set>
using namespace std;
int main() {
string str;
multiset<char> numSet;
getline(cin, str);
for (const auto& c:str) {
numSet.insert(c);
}
for (auto it=numSet.begin(); it!=numSet.end(); ++it) {
cout << *it;
}
return 0;
}