介绍
循环链表:将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表,简称循环链表。
空的循环链表:
非空的循环链表:
循环链表与单链表的主要差异在于循环的判断上,原来是判断p->next是否为空,现在则是p->next不等于头结点,则循环未结束。
循环链表的实现关键
A、插入位置为0时,头结点和尾结点均指向新结点,新结点作为首结点插入链表。
B、删除位置为0时,头结点和尾结点指向位置为1的结点,删除销毁首结点
循环单链表
循环双链表
初始化
插入
删除
总结
附:双向(循环)链表,约瑟夫环问题:
https://www.jianshu.com/p/24734b20c81b
感兴趣可以看看。