直接使用 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;
}