C语言一个文件怎么写两个链表
时间: 2024-05-14 12:16:35 浏览: 79
您好,关于您的问题,我可以提供以下思路:
假设您要实现两个链表,可以使用两个结构体来分别描述节点,如:
```c
typedef struct Node {
int data;
struct Node *next;
} Node;
```
然后可以定义两个头指针来分别指向两个链表的头节点,如:
```c
Node *list1_head = NULL;
Node *list2_head = NULL;
```
接下来,您可以按照常规链表操作来分别对两个链表进行操作,如:
```c
// 在链表 1 中插入一个节点
Node *new_node1 = (Node *)malloc(sizeof(Node));
new_node1->data = 10;
new_node1->next = list1_head;
list1_head = new_node1;
// 在链表 2 中插入一个节点
Node *new_node2 = (Node *)malloc(sizeof(Node));
new_node2->data = 20;
new_node2->next = list2_head;
list2_head = new_node2;
// 遍历链表 1 和链表 2
Node *curr1 = list1_head;
while (curr1 != NULL) {
printf("%d ", curr1->data);
curr1 = curr1->next;
}
Node *curr2 = list2_head;
while (curr2 != NULL) {
printf("%d ", curr2->data);
curr2 = curr2->next;
}
```
以上仅为一个简单的示例,您可以根据实际需求进行扩展和修改。如果您有任何疑问或需要更详细的帮助,请随时与我沟通。