循环链表

单向链表
双向链表
循环链表
跳表
异或链表

示例练习>>>

循环链表就是首尾相连的一种链表,循环链表中第一个节点之前是最后一个节点,反之亦然。循环链表也分为单向循环链表和双向循环链表,如下图所示。

循环链表的插入和删除可以参考 单向链表双向链表 ,这里就不在重复介绍。循环链表除了首尾相连以外,与单向链表和双向链表并没有太大区别。使用循环链表的时候最好添加一个哑节点 dummy 作为循环链表的头节点,这个节点不存储任何数据,这样无论添加或者是删除节点都不会导致头节点的随意变动。

参考:LinkedHashMap.java

相关链接

数组
数组滚动数组差分数组树状数组
链表
链单向表双向链表循环链表跳表异或链表
队列
队列循环队列双端队列
散列表
散列表
二叉树二叉搜索树AVL树红黑树字典树哈夫曼树线段树笛卡尔树
图的介绍图的遍历Dijkstra算法Bellman-Ford算法SPFA算法Floyd算法Prim算法Kruskal算法Boruvka算法拓扑排序

信奥赛编程(刷题请进)>>>

经过两年的打磨,我的新作《算法秘籍》已经出版,有需要的可以点击购买。也可以点击 内容介绍 查看详情。