前插法创建带头节点的单链表

Posted thegonedays

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前插法创建带头节点的单链表相关的知识,希望对你有一定的参考价值。

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 typedef struct{
 4     int info;
 5     struct node *next;
 6 }node;
 7 node* creat(){
 8     int n,i;
 9     node *head;
10     head=(node*)malloc(sizeof(node));
11     head->next=NULL;
12     printf("input creat node‘s num
 ");
13     scanf("%d",&n);
14     for(i=0;i<n;i++){
15         node *p;
16         p=(node*)malloc(sizeof(node));
17         printf("input node value
");
18         scanf("%d",&p->info);
19         p->next=head->next;
20         head->next=p;
21     }
22     return head;
23     
24 }
25 print(node* head)
26 {
27     node* q;
28     q=head->next;
29     while(q)
30     {
31         if(q->next==NULL){printf("%d",q->info);}
32         else{printf("%d->",q->info);}
33         q=q->next; 
34     }
35 }
36 
37 int main()
38 {
39     node *head;
40     head=creat();
41     print(head);
42     return 0;
43 }

思路:

创建头结点head:head的指针域附为空

创建节点:p

P->next=head->next // p->next域附为空

head->next=p // 把p节点连接到头指针后

以上是关于前插法创建带头节点的单链表的主要内容,如果未能解决你的问题,请参考以下文章

考研数据结构之单链代码

考研数据结构之单链代码

单链表创建之--头插法创建带头结点的单链表,超详细

C实现头插法和尾插法来构建单链表(不带头结点)

每天进步一点点之带头节点单链表

单链表的创建