定义三个单链表c语言
时间: 2024-09-26 10:02:09 浏览: 28
在C语言中,你可以使用结构体和指针来定义单链表。以下是创建、插入节点以及基本操作的一个简单示例:
```c
// 定义链表节点结构体
typedef struct Node {
int data; // 节点数据
struct Node* next; // 指向下一个节点的指针
} Node;
// 创建一个新的链表
Node* createList() {
return (Node*)malloc(sizeof(Node)); // 分配内存并初始化为头结点
}
// 插入新节点到链表头部
void insertAtHead(Node** head, int data) {
Node* newNode = createList();
newNode->data = data;
newNode->next = *head; // 将新节点的next指向原头节点
*head = newNode; // 更新头节点
}
// 插入新节点到链表尾部
void append(Node** head, int data) {
Node* newNode = createList();
if (*head == NULL) { // 链表为空,直接插入
newNode->next = *head;
*head = newNode;
} else {
Node* temp = *head;
while (temp->next != NULL) {
temp = temp->next;
}
temp->next = newNode;
newNode->next = NULL;
}
}
// 打印链表
void printList(Node* head) {
while (head != NULL) {
printf("%d -> ", head->data);
head = head->next;
}
printf("NULL\n");
}
阅读全文