数据结构与算法 双向链表

262 阅读1分钟

双向链表--表现形式

单向(循环)链表:指针是一个方向的。

双向链表有两个指针域

  • 打印数据不应该加上头节点的数据,带头结点的双向链表插入数据更加方便,比如在A的前面插入数据,没有头节点的需要移动L指针

双向链表的创建

1.建议创建带有头指针的链表。

  • 结构体表示

代码 补

2.双向链表的插入

  • 把C插入A和B之间需要4步:首先把B的前驱指向C,C的next指向B,A的next指向C,C的前驱指向A

3.双向链表删除结点

指定位置删除

  • 删除B三步:A->next = C,C.prior=A,释放B
  • 代码

指定内容删除

4.双向链表的查询

5.双向链表的更新

二:双向循环链表

1.循环链表的创建

指针域都是指向自己

2.插入

3.删除