4.4 双向链表[学习记录]
来自https://www.bilibili.com/video/BV1E4411H73v?p=26
写在前面:本文内容大致和原视频内老师的笔记内容相同,会偶尔插入自己的注释和理解,尽量会完成作业
使用带head头的双向链表实现–水浒英雄排行榜>
管理单向链表的缺点分析:
1)单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找。
2)单向链表不能自我删除,需要靠辅助节点,而双向链表,则可以自我删除,所以前面我们单链表删除时节点,总是找到temp,temp是待删除节点的前一个节点(认真体会).
分析了双向链表如何完成遍历,添加,修改,删除的分析思路

对上图的说明
分析双向链表的遍历,添加,修改,删除的操作思路===》代码实现
1)遍历方和单链表一样,只是可以向前,也可以向后查找
2)添加(默认添加到双向链表的最后)
(1)先找到双向链表的最后这个节点
(2) temp.next = newHeroNode
(3)newHeroNode.pre=temp;
3)修改思路和原来的单向链表一样.
4)删除
(1)因为是双向链表,因此,我们可以实现自我删除某个节点
(2)直接找到要删除的这个节点,比如temp
(3) temp.pre.next = temp.next
(4) temp.next.pre = temp.pre;
双向链表的代码实现
4.4.2课堂作业和思路提示
双向链表的第二种添加方式,按照编号顺序[示意图]按照单链表的顺序添加,稍作修改即可
这题不难,如果你是想来这里找答案的话,我最后劝你一句,试试自己写,你可以写出来的
