今天开始学习链表的部分
链表的概念
链表(linked list)分为很多种。有单链表和多链表等。结点(Node)的组成:线性表中的数据元素及元素之间的逻辑关系可有结点来表示。结点由两部分组成:一部分是用来存储数据元素的值的数据域,另一部分是用来存储元素之间逻辑关系的指针域,指针域存放的是该结点的直接后继结点的地址。结点的结构如图所示:
单链表(Single Linked List)
定义:用链式存储结构表示的线性表称为链表,即用一组任意(可以连续也可以不连续)的存储单元来存放线性表的结点;把每个结点只有一个指针域的链表称为单链表。
开始结点、尾结点、头结点、和头指针:
在链表中存储第一个数据元素的结点称为开始结点;存储最后一个数据元素的结点称为尾结点。在开始结点之前附加一个结点称为头结点;指向链表中第一个结点的指针称为头指针。
实战
用结构体表示结点的指针域和数据域。通过typedef定义NODE和* PNODE。这里的NODE等价于struct Node,PNODE等价于struct Node *
整个的创建链表的流程,如图所示
接下来,模仿创建链表的逻辑,模仿写出如下函数:
全部代码
END
领取专属 10元无门槛券
私享最新 技术干货