sort 结构数组排序
在编程中,对结构数组进行排序是一个常见的任务。不同的编程语言提供了不同的方法来实现这一目标。以下是使用几种常见编程语言对结构数组进行排序的示例。
C语言
在C语言中,可以使用qsort函数对结构体数组进行排序。你需要定义一个比较函数来指定排序的规则。
include <stdio.h>
include <stdlib.h>
typedef struct {
int id;
char name[50];
} Person;
int compare(const void *a, const void *b) {
Person *personA = (Person *)a;
Person *personB = (Person *)b;
return personA->id - personB->id;
}
int main() {
Person people[] = {
{1, "Alice"},
{3, "Bob"},
{2, "Charlie"}
};
int n = sizeof(people) / sizeof(Person);
qsort(people, n, sizeof(Person), compare);
for (int i = 0; i < n; i++) {
printf("%d %s\n", people[i].id, people[i].name);
}
return 0;
sort函数 js}
Python
在Python中,你可以使用内置的sorted函数对结构体数组进行排序。
class Person:
def __init__(self, id, name):
self.id = id
self.name = name
people = [Person(1, "Alice"), Person(3, "Bob"), Person(2, "Charlie")]
sorted_people = sorted(people, key=lambda person: person.id)
for person in sorted_people:
print(person.id, person.name)
JavaScript (Node.js)
在JavaScript中,你可以使用内置的sort方法对结构体数组进行排序。
class Person {
constructor(id, name) {
this.id = id;
this.name = name;
}
}
const people = [new Person(1, "Alice"), new Person(3, "Bob"), new Person(2, "Charlie")];
people.sort((a, b) => a.id - b.id);
console.log(people.map(person => `${person.id} ${person.name}`).join("\n"));
这些示例展示了如何使用不同的编程语言对结构体数组进行排序。选择适合你项目需求的语言和排序方法。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论