结构体中的数据能否进行冒泡算法排序
时间: 2023-07-23 22:41:56 浏览: 85
数据结构中的冒泡排序
可以的,结构体中的数据也可以通过冒泡算法进行排序。结构体中的数据可以使用多种排序算法进行排序,包括冒泡排序、插入排序、选择排序、归并排序和快速排序等。下面是一个使用冒泡排序对结构体中的数据进行排序的示例代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
struct Student {
string name;
int score;
};
void bubbleSort(Student arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j].score > arr[j + 1].score) {
Student temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void printStudents(Student arr[], int n) {
for (int i = 0; i < n; i++) {
cout << arr[i].name << " " << arr[i].score << endl;
}
}
int main() {
Student stuArr[3] = { {"Tom", 90}, {"Jerry", 80}, {"Linda", 95} };
bubbleSort(stuArr, 3);
printStudents(stuArr, 3);
return 0;
}
```
这段代码定义了一个结构体 Student,包含两个字段 name 和 score。然后使用冒泡排序对结构体数组 stuArr 中的学生成绩进行排序,最后输出排序后的结果。在排序时,通过比较结构体的 score 字段的值来确定两个结构体的大小关系,从而进行交换。
阅读全文