1
已采纳
王梓澳
中级光能
中级光能
核心代码如下(有注释):
cd=a.size();//测字符串a的串长
for (int i=0;i<=cd-1;i++)//把字符串a的每一个字母转换成ASCII码
{
s[i]=a[i];
}
qsort(s,0,cd-1);//调用快排函数
for (int i=0;i<=cd-1;i++)//输出
{
a[i]=s[i];//把ASCII码转换成字符输出
cout<<a[i];
}
快排函数:
int qsort(int sz[1000001],int l,int r)
{
int i,j,mid=0,p=0;
i=l;j=r;
mid=sz[(l+r)/2];
while(i<=j)
{
while(sz[i]<mid) i++;
while(sz[j]>mid) j--;
if(i<=j)
{
swap(sz[i],sz[j]);
i++;j--;
}
}
if(i<r) qsort(sz,i,r);
if(l<j) qsort(sz,l,j);
}
头文件要有两个:
#include <iostream>
#include <string>
输入字符串a要用getline:
getline (cin,a);
王梓澳在2018-02-03 17:16:05追加了内容
注:字符串a不是字符数组,是字符串定义是string(头文件#include<string>):
string a;
0
0
0