#include <cstdio>
#include <vector>
#include <iostream>
#include <string>
#include <cctype>
#include <cstring>
#include <queue>
using namespace std;
#define MAX_NUM 10050
vector<char> DATA[26];
char ans[MAX_NUM];
queue<char>Q;
int main(void)
{
string str ;
int i ;
int j ;
//freopen("input.txt" , "r" , stdin);
getline(cin , str );
memset(ans , 0 , sizeof(ans));
for( i = 0 ; i < str.length() ; i++)
{
char ch = str[i];
if( isalpha(ch))
{
DATA[ tolower(ch)-'a' ].push_back(ch);
}
else
{
ans[i] = ch ;
}
}
for( i = 0 ; i < 26 ; i++)
{
for( j = 0 ; j < DATA[i].size() ; j++)
{
char ch = DATA[i][j];
Q.push(ch);
}
}
for( i = 0 ; i < str.length();i++)
{
//可以放入
if( ans[i] == 0)
{
char ch = Q.front();
Q.pop();
ans[i] = ch ;
}
}
ans[i] = '\0';
printf("%s\n" , ans);
return 0 ;
}
華爲OJ——字符串排序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.