在c语言中数据结构的合理性可以大大地减少一个程序的时间复杂度,使程序的算法简单,易懂,高效。而数据结构中的“单链表”是一种非常重要的结构,现在我就分享一下我的编写经验,希望对大家有所帮助!
工具/原料
1
电脑
2
c语言编译器
方法/步骤
1
想要构建“单链表”,线性链表中“单链表”的储存结构是我们必须分析的,它由数据域,和指针域组成。比如:typededef struct LNode{ ElemType data; struct *next;}LNode, *LinkList;
2
假设L是LinkList型变量,则L为单链表的头指针。如:L=(LinkList)malloc(sizeof(LNode));L->next=NULL;
3
单链表的头指针建好以后,就需要实现在输入数据的同时实现链表的自动扩充,和数据的保存。如:for(i=n;i>0;--i){p=(LinkList)malloc(sizeof(LNode));scanf(&p->data);p->next=L->next;L->next=p;}
4
综上所述,就可以构建一个线性链表中的单链表了!总:typededef struct LNode{ ElemType data; struct *next;}LNode, *LinkList;L=(LinkList)malloc(sizeof(LNode));L->next=NULL;for(i=n;i>0;--i){p=(LinkList)malloc(sizeof(LNode));scanf(&p->data);p->next=L->next;L->next=p;}
注意事项
一开始L->next=NULL,是为了使单链表中最后的一个储存空间的指针为空!