string字符串排序
时间: 2023-07-26 07:27:43 浏览: 84
对字符串进行排序可以使用STL中的sort函数,具体步骤如下:
1. 将字符串转化为字符数组;
2. 使用sort函数对字符数组进行排序;
3. 将排好序的字符数组转化为字符串。
代码如下:
```cpp
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
int main() {
string str = "hello world";
char charArray[str.size() + 1];
strcpy(charArray, str.c_str()); // 将字符串转化为字符数组
sort(charArray, charArray + str.size()); // 对字符数组进行排序
string sortedStr(charArray); // 将排好序的字符数组转化为字符串
cout << sortedStr << endl; // 输出排好序的字符串
return 0;
}
```
输出结果为:` dehllloorw`。
相关问题
String字符串根据数字排序
可以使用Java中的Arrays.sort()方法,结合Comparator接口来实现根据数字排序String字符串。
例如,假设有一个String数组strArr存储了一些数字字符串,可以按照如下方式进行排序:
```
Arrays.sort(strArr, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return Integer.compare(Integer.parseInt(s1), Integer.parseInt(s2));
}
});
```
这样,strArr中的字符串就会按照数字大小的顺序进行排序。需要注意的是,如果字符串中包含非数字字符,上述代码会抛出NumberFormatException异常。可以在代码中加入处理异常的逻辑。
string类的字符串排序c++
可以使用`sort`函数对字符串数组排序,示例代码如下:
```c++
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main() {
string arr[] = {"apple", "banana", "orange", "grape"};
int n = sizeof(arr) / sizeof(arr[0]);
sort(arr, arr + n);
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
上述代码中,我们定义了一个字符串数组`arr`,然后使用`sort`函数对其进行排序。最后遍历数组并输出排序结果。需要注意的是,我们在`sort`函数中传入的第二个参数是指向数组末尾的迭代器,而不是数组长度。