满意答案
zhouli819
2013.03.06
采纳率:55% 等级:13
已帮助:14921人
#include "iostream"
#include "string"
using namespace std;
#define n 10 //假设没个单词最大数目是10
#define count 5 //假设只有5个单词
int main()
{
int i=0,j=0,k=0,d=0,m=0;
string c[count];//存放单词
string str[26][count];//用来存放基数排序的桶
cout<
for (i=0;i
{
cin>>c[i];
}
for (j=9;j>=0;j--)//根据基数排序法,
//对单词各位(0—n-1)进行排序
{
for (i=0;i
{
k=c[i][j]-97;
if (k<0)
{
k=0;
}
str[k][m++]=c[i];
}
for(i=0,k=0;i
for(d=0;d
if (str[k][d][0]>96&&str[k][d][0]<123||str[k][d][0]>64&&str[k][d][0]<91)
//判断26各排序桶是否有单词
{
c[i++]=str[k][d];
str[k][d][0]=32;
}
m=0;
}
for (i=0;i
{
cout<
}
return 0;
}
00分享举报