vector结构体排序
时间: 2023-11-20 15:56:28 浏览: 94
最快的排序算法 从最简单的vector中sort用法到自定义比较函数comp后对结构体排序的sort算法,排序算法数据结构
5星 · 资源好评率100%
以下是使用lambda表达式对vector结构体进行排序的示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Student {
string name;
int score;
};
int main() {
vector<Student> students = {{"Tom", 80}, {"Jerry", 90}, {"Alice", 70}};
// 按照分数降序排序
sort(students.begin(), students.end(), [](const Student& a, const Student& b) {
return a.score > b.score;
});
// 输出排序结果
for (const auto& student : students) {
cout << student.name << " " << student.score << endl;
}
return 0;
}
```
上述代码中,我们定义了一个结构体`Student`,包含学生姓名和分数两个成员变量。然后我们定义了一个`vector`类型的容器`students`,其中存储了三个学生的信息。接着,我们使用`sort`函数对`students`进行排序,排序的依据是学生的分数,按照降序排列。最后,我们遍历排序后的`students`容器,输出每个学生的姓名和分数。
阅读全文