王道数据结构 (29) 双链表的操作
双链表的初始化 :
1.先分配头节点
2.头节点的左指针 右指针为NUll
双链表的插入:
双链表的插入需要判断p 的 下一个 节点 是否为 NUll
如下面两个图:
如果 p的下一个节点是空 会报错 所以我们要进行判断
执行顺序 1 2 3 4
(1) 先将 s 的next 域指向原来p 指向的next 域
(2) p 的next 域是 y y 的 前域是 s 则 是黄色这条线 这步 ‘
(3) s 的前域 是 p
(4) p 的 next 域是 s
总结 : 插入就是 要 将插入节点 的前域 后域与 上下节点相连,上一个节点 的next 域 指向 s x下一个节点的前域 指向 s
双链表的删除
删除操作 就是 将 中间 的 节点 的链接 断开 、
(1) 将被删除节点 的 上一个节点的 next 指向 被删除节点 的 next 域
(2) 将被删除节点 的 下一个节点 的 前域 指向 被删除节点 的上一个节点
越努力越幸运