将学生的信息写入异质链表并输出
时间: 2024-09-13 20:09:30 浏览: 55
【C语言】学生信息管理_链表
将学生的信息存储在异质链表(Heterogeneous List)中,通常意味着链表中的每个节点可以包含不同类型的数据结构,比如一个学生信息的节点可能包含姓名、年龄、学号等属性。在许多编程语言中,包括Python或C++,你可以创建一个链表节点类,然后为每个学生实例化这个节点。
以下是一个简单的示例(假设我们有一个`Student`类和一个通用的`Node`类,`Node`用于表示链表中的元素):
```python
class Node:
def __init__(self, data):
self.data = data
self.next = None
class Student:
def __init__(self, name, age, student_id):
self.name = name
self.age = age
self.student_id = student_id
# 创建异质链表
def insert_student_into_list(head, student):
new_node = Node(student)
if head is None:
head = new_node
else:
current = head
while current.next:
current = current.next
current.next = new_node
return head
# 输出链表
def print_students(node):
while node:
print(f"Name: {node.data.name}, Age: {node.data.age}, ID: {node.data.student_id}")
node = node.next
# 使用示例
students_list_head = None
student1 = Student("张三", 18, '001')
student2 = Student("李四", 20, '002')
head = insert_student_into_list(students_list_head, student1)
insert_student_into_list(head, student2)
print_students(head)
```
在这个例子中,我们首先创建了两个学生的实例,然后通过`insert_student_into_list`函数将它们添加到链表的末尾。最后,`print_students`函数遍历链表并打印出每个学生的详细信息。
阅读全文