数据结构与算法(03)

本文介绍了双向链表相对于单向链表的优势,并详细阐述了如何在双向链表中进行遍历、添加、修改和删除操作。在遍历方面,双向链表可以双向查找;添加操作主要涉及找到链表末尾并更新连接;修改操作与单链表类似;删除操作则可以直接定位节点并更新相邻节点的连接,实现自我删除。
摘要由CSDN通过智能技术生成

数据结构与算法(03)

1.双链表应用实例
1.1双向链表的操作分析和实现
使用带head头的双向链表实现
管理单向链表的缺点分析:
1)单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找。
2)单向链表不能自我删除,需要靠辅助节点,而双向链表可以自我删除,单链表删除时节点,总是找到temp,temp是删除节点的前一个节点
3)双向链表如何完成遍历,添加,修改和删除。

在这里插入图片描述
对上图的说明:

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;
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值