【C++】时间复杂度O(n)
#include<string>
using namespace std;
#define MAX 1000
int main() {
string s="start";
while (s != "") {
getline(cin, s);
string mem = "";
for (int i = 0; i < 26; i++) {
for (int j = 0; j < s.size(); j++) {
if ((s[j] - 'a' == i) || (s[j] - 'A' == i)) {
mem += s[j];//把所有英文字母存到一个容器中
}
}
}
int index = 0;
for (int i = 0; i < s.size(); i++) {
if ((s[i] >= 'a' & s[i] <= 'z') || (s[i] >= 'A' & s[i] <= 'Z')) {
s[i] = mem[index++];
}
if (index == mem.size())break;
}
cout << s << endl;
}
return 0;
}