双链表的初始化 :

王道数据结构 (29) 双链表的操作

 

 

1.先分配头节点 

王道数据结构 (29) 双链表的操作

 

 

2.头节点的左指针 右指针为NUll

王道数据结构 (29) 双链表的操作   王道数据结构 (29) 双链表的操作

 

 

 

 双链表的插入:

双链表的插入需要判断p  的 下一个 节点 是否为 NUll  

 

如下面两个图:

 

 

王道数据结构 (29) 双链表的操作    

 

 

如果 p的下一个节点是空 会报错  所以我们要进行判断 

 

 

 

 

王道数据结构 (29) 双链表的操作

 

 

 

 

 

王道数据结构 (29) 双链表的操作

 

 

 

 

执行顺序 1 2  3  4  

(1)  王道数据结构 (29) 双链表的操作  先将 s 的next 域指向原来p 指向的next  域 

 

 

 

王道数据结构 (29) 双链表的操作

 

 

 

 

(2) 王道数据结构 (29) 双链表的操作 p 的next  域是 y  y 的 前域是 s  则 是黄色这条线 这步 ‘

 

 王道数据结构 (29) 双链表的操作

 

 

(3) 王道数据结构 (29) 双链表的操作  s 的前域 是 p  

 

 

 

 王道数据结构 (29) 双链表的操作

 

 

 

 

 

(4)   王道数据结构 (29) 双链表的操作 p 的 next  域是 s 

 

 

王道数据结构 (29) 双链表的操作

 

 

 

 总结 :  插入就是 要 将插入节点 的前域 后域与 上下节点相连,上一个节点 的next  域 指向 s  x下一个节点的前域 指向 s   

 

 

 

双链表的删除
王道数据结构 (29) 双链表的操作

 

 

 

 

删除操作 就是 将 中间 的 节点 的链接 断开 、

(1) 将被删除节点 的 上一个节点的 next  指向  被删除节点 的 next  域 

(2) 将被删除节点 的 下一个节点 的 前域 指向 被删除节点 的上一个节点 

相关文章:

  • 2021-07-08
  • 2021-08-25
  • 2021-11-15
  • 2022-12-23
  • 2019-03-27
  • 2022-12-23
  • 2021-12-16
  • 2021-06-01
猜你喜欢
  • 2021-06-29
  • 2022-12-23
  • 2021-11-17
  • 2021-11-22
  • 2021-10-17
  • 2021-12-06
  • 2021-11-17
相关资源
相似解决方案