双向链表可以分为普通双向链表(前面我们已经学习过了)与循环双向链表。
循环双向链表的定义
循环双向链表就是在双向链表的基础之上,头结点的Prev指向尾结点,尾结点的Next指针则指向头结点,从而形成闭环结构。
内存中的结构
双向链表与循环双向链表的区别
双向链表 |
循环双向链表 |
|
查找 |
可以找到前驱域后继节点 |
可以找到前驱域后继节点 |
遍历 |
可以从任意一个位置双向遍历 |
可从任意一个位置双向循环遍历所有节点 |
增删节点 |
较复杂 |
较复杂,头部尾部 |