1 双链表中每个节点有两个指针域,一个指向其后继节点,另一个指向其前驱节点。

2 建立双链表的方式:头插法、尾插法,具体算法如下:

数据结构中单链表常用的操作算法(数据结构学习笔记)(1)

头插法创建双链表

数据结构中单链表常用的操作算法(数据结构学习笔记)(2)

3 在双向链表中p指针所指节点之后插入一个*s节点的核心运算为(共修改4个指针域):

s->next =p->next; // 将s节点的后继指针指向p节点的下个节点

p->next->prior=s; // 将p节点的下个节点的前驱指针指向s

s->prior = p; // 将s的前驱指针指向p

p->next =s; // 将p节点的后继节点变为s节点

数据结构中单链表常用的操作算法(数据结构学习笔记)(3)

在双链表L第i个位置插入值为e的节点算法

4 循环链表:其特点是表中尾节点的指针域不再为空,而是指向头节点,整个链表形成一个环(在循环链表中判断尾节点p的条件是p->next==L)。

,