即采用链式存储的线性表。
链表类型
1、单链表
2、双向链表
3、循环链表
4、静态链表
链表的实现形式也多种多样,通过不同的链表形式实现的线性表在性能上也各有优缺点。
共性:所有的链表都包含两个域,一个是数据域,一个是指针域。
区别在于:
单链表的指针域只有一个指向后继节点的指针;
双向链表的指针域有两个指针,它的pFro(指前指针)指向前驱节点,pNext(指尾指针)指向后继节点。
循环链表:可以由单链表实现,也可以由双链表实现
单链表实现的循环链表即将原本的尾节点的指针域指针指向头结点。
而双向链表则需要将头结点的指针域的pFro(指前指针)指向尾节点,并且将尾节点的pNext(指尾指针)指向头节点。
静态链表:是一种用顺序存储实现的一种链表。
单链表实现的线性表:
头节点 | 待添加节点 |
int data;//数据域,可以是任何其他类型,这里默认为int 型 | int data; |
ListDataSet* pNext;//指针域,指向下一个节点 |