循环双链表---Here's the extracted content from the image: **Question Stem:** **一、循环双链表** 通过将双链表中最后一个结点的后继指针指向双链表的头结点,并将其头结点的先驱指针指向表中最后一个结点,即可得到循环双链表,它与双链表的基本操作大致相同,在本小节中将重点介绍循环双链表的创建、插入及删除操作。 在文件 `ex020305.py` 中我们首先定义一个 `DoubleLinkedListNode` 类,该类包含创建结点并对结点进行初始化的操作 (参见教材 P59 表 2-11),还定义一个 `CircularDoubleLinkedList` 类,用于创建一个循环双链表,并对其执行相关操作 (参见教材 P59 表 2-12)。 我们实现 `CircularDoubleLinkedList` 类中的 `CreateCircularDoubleLinkedList(self)`、`InsertElementInTail(self)`、`InsertElementInHead(self)` 和 `DeleteElement(self)` 4 个方法,其余方法读者可根据自己的需要来实现。 **1、创建循环双链函数实现** 我们调用 `DoubleLinkedListNode` 类的成员函数 `__init__(self, data)` 初始化一个结点,其算法思路如下。 (1) 创建一个数据域,用于存储每个结点的值。

视频信息