按字符串大小进行降序排序
时间: 2023-05-10 18:56:06 浏览: 103
可以使用sort函数和greater比较函数来实现按字符串大小进行降序排序,示例代码如下:
```c++
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
using namespace std;
bool greater(string a, string b) {
return a > b;
}
int main() {
vector<string> strs = {"hello", "world", "cpp", "python", "java"};
sort(strs.begin(), strs.end(), greater);
for (auto s : strs) {
cout << s << " ";
}
cout << endl;
return 0;
}
```
输出结果为:
```
world python java hello cpp
```
相关问题
python按字符串大小进行降序排序
可以使用sorted函数,其中key参数指定排序规则为字符串大小,reverse参数指定降序排序。示例代码如下:
```python
strings = ['apple', 'banana', 'orange', 'pear']
sorted_strings = sorted(strings, key=len, reverse=True)
print(sorted_strings)
```
输出结果为:
```
['banana', 'orange', 'apple', 'pear']
```
编写程序。首先输入一个列表,从键盘输入一个数k,k表示列表的某个下标值,列表下标k值前的元素按字符串大小进行降序排序,列表下标k值后的元素进行逆序存储操作,最后输出列表。“
好的,我可以回答这个问题。以下是程序的代码:
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
void swap(char *a, char *b) {
char temp[MAX_LEN];
strcpy(temp, a);
strcpy(a, b);
strcpy(b, temp);
}
void reverse(char *str) {
int len = strlen(str);
for (int i = ; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
}
int main() {
char list[MAX_LEN][MAX_LEN];
int k;
scanf("%d", &k);
int n = ;
while (scanf("%s", list[n]) != EOF) {
n++;
}
for (int i = ; i < k; i++) {
for (int j = i + 1; j < n; j++) {
if (strcmp(list[i], list[j]) < ) {
swap(list[i], list[j]);
}
}
}
for (int i = k; i < n; i++) {
reverse(list[i]);
}
for (int i = ; i < n; i++) {
printf("%s ", list[i]);
}
printf("\n");
return ;
}
阅读全文