首页 > 代码库 > 单链表的初始化和创建(尾插法)
单链表的初始化和创建(尾插法)
1 #include<stdlib.h> 2 #include<stdio.h> 3 typedef struct Node 4 { 5 int data; 6 struct Node *next; 7 }Node,*LinkList; 8 9 void initList(LinkList *L)10 {11 (*L) = NULL;12 printf("初始化成功\n");13 }14 15 LinkList creatList(int n)16 {17 LinkList l,h,s;//l为尾指针,h为头指针,s为工作指针18 int i = 0;19 if((h=(LinkList)malloc(sizeof(Node)))==NULL)20 {21 printf("不能分配空间!");22 exit(0);23 }24 h->data = http://www.mamicode.com/0;25 h->next = NULL;26 l=h;27 for(;i<n;i++)28 {29 if((s=(LinkList)malloc(sizeof(Node)))==NULL)30 {31 printf("不能分配空间!");32 exit(0);33 }//创建出节点34 l->next = s;//与尾节点做链接35 printf("请输入第%d个数字",i+1);36 scanf("%d",&(s->data));//输入数据37 s->next = NULL;//置空38 l=s;//尾指针后移39 40 }41 return h;42 }43 44 int main()45 {46 LinkList listList = NULL;47 initList(&listList);48 listList = creatList(5);49 return 0;50 }
创建的时候,34-38行,链接,数据输入,置空,尾指针后移,顺序可变,后移一定要放在链接后面
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。