1、循环链表的定义:循环链表是另一种形式的表示线性表的链表。
2、循环链表的节点结构:
循环链表的结点包括两个部分:数据域和指针域。
(1)数据域(data),用于存储该结点的数据元素,数据元素类型由应用问题决定。
(2)指针域(link),用于存放一个指针,该指针指向下一个结点的开始存储地址。
循环链表的结点结构示意图:
3、循环链表中各节点的链接方式:
(1)循环链表与单链表一样,可以有附加头结点,这样能够简化链表操作的实现,统一空表与非空表的运算。
(2)循环链表中表尾结点的link域中不是NULL,而是存放了一个指向链表开始结点的指针。因此,涉及遍历操作时,其终止条件不再是像单链表那样判别p或p->next是否为空,而是判别它们是否等于头指针。
(3)循环链表只要知道表中任何一个结点的地址,就可以遍历表中其他任一结点。
(4)循