数据结构(王道)——线性表的存储结构之循环表

一、循环单链表

定义:

循环单链表代码实现

创建并初始化、判断循环单链表是否为空、判断结点p是否为循环单链表的表尾结点的代码操作。

二、循环双链表

定义:

循环双链表代码实现

创建并初始化、判断循环双链表是否为空、判断结点p是否为循环双链表的表尾结点的代码操作。

普通双链表和循环双链表插入的区别:

普通双链表用以下代码实现插入的时候,如果插入的结点是最后一个结点,则会出错,因为最后一个结点的后驱是空,没有前项指针。但是循环双链表则适用这种插入方式。

循环双链表的删除:

同上述普通双链表和循环双链表的插入操作中的错误一样。下列代码在循环双链表当中是可以适用的。

总结:

相关推荐
垫脚摸太阳9 小时前
第 36 场 蓝桥·算法挑战赛·百校联赛---赛后复盘
数据结构·c++·算法
Aaswk9 小时前
刷题笔记(回溯算法)
数据结构·c++·笔记·算法·leetcode·深度优先·剪枝
计算机安禾9 小时前
【数据结构与算法】第14篇:队列(一):循环队列(顺序存储
c语言·开发语言·数据结构·c++·算法·visual studio
Java_小白呀10 小时前
考研408数据结构(持续更新中...)
数据结构·考研
Frostnova丶10 小时前
(11)LeetCode 239. 滑动窗口最大值
数据结构·算法·leetcode
励志的小陈11 小时前
数据结构Stack(C语言--用数组实现栈)
c语言·数据结构
宵时待雨12 小时前
C++笔记归纳17:哈希
数据结构·c++·笔记·算法·哈希算法
炘爚13 小时前
单链表如何逆置
数据结构
liuyao_xianhui13 小时前
优选算法_栈_删除字符中的所有相邻重复项_C++
开发语言·数据结构·c++·python·算法·leetcode·链表
WolfGang00732113 小时前
代码随想录算法训练营 Day22 | 回溯算法 part04
数据结构·算法