头插法创建链表并输出
时间: 2024-02-02 15:04:32 浏览: 67
带头结点尾插法创建链表.docx
头插法是一种创建链表的方法,通过在链表的头部插入新的节点来创建链表。具体的步骤如下:
1. 创建一个头结点,将其next指针指向NULL,这个头结点将作为链表的表尾节点。
2. 输入要插入链表的数据,将其作为新节点的数据域。
3. 创建一个新节点,并将新节点的next指针指向头结点的next指针指向的节点。
4. 将头结点的next指针指向新节点,使新节点成为链表的新的头节点。
5. 重复步骤2到步骤4,直到结束输入。
6. 遍历链表,从头结点的next指针开始,依次输出各节点的数据域。
下面是一个使用头插法创建链表并输出的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int data;
struct node *next;
} Node;
void printList(Node *head);
Node *createList();
int main() {
Node *head = createList();
printList(head);
return 0;
}
void printList(Node *head) {
Node *p = head->next;
while(p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
}
Node *createList() {
Node *head = (Node *)malloc(sizeof(Node));
head->next = NULL;
int num;
while(scanf("%d", &num) && num != 0) {
Node *newNode = (Node *)malloc(sizeof(Node));
newNode->data = num;
newNode->next = head->next;
head->next = newNode;
}
return head;
}
```
你可以按照这个示例代码的步骤,使用头插法创建链表并输出。在输入数据时,以0作为结束标志。然后调用printList函数遍历链表并输出。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
阅读全文