对长度为7的字符串BdsinAD,将字符按ASCII码排序
时间: 2024-02-20 14:02:37 浏览: 125
可以使用快速排序算法对字符串按照 ASCII 码进行排序,以下是一个简单的 C++ 代码示例:
```c++
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int partition(string& s, int l, int r) {
int pivot = s[r];
int i = l - 1;
for (int j = l; j < r; j++) {
if (s[j] < pivot) {
i++;
swap(s[i], s[j]);
}
}
swap(s[i+1], s[r]);
return i + 1;
}
void quicksort(string& s, int l, int r) {
if (l < r) {
int q = partition(s, l, r);
quicksort(s, l, q-1);
quicksort(s, q+1, r);
}
}
int main() {
string s = "BdsinAD";
quicksort(s, 0, s.size()-1);
cout << s << endl;
return 0;
}
```
输出结果为:
```
ABDDins
```
注意,字符串中的小写字母会被排到大写字母的前面,因为小写字母的 ASCII 码比大写字母的 ASCII 码小。如果需要将小写字母排在大写字母的后面,可以在比较字符的时候先将字母都转换成大写或小写字母。
阅读全文