概念:
双向链表也叫双链表,是链表的一种,是在操作系统中常用的数据结构,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱,其头指针 head 是唯一确定的。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点,这种数据结构形式使得双向链表在查找时更加方便,特别是大量数据的遍历。由于双向链表具有对称性,能方便地完成各种插入、删除等操作,但需要注意前后方向的操作
理解:
双向链表如下图所示,即每个节点都会有两个指针,一个指向前一个节点,一个指向下一个节点。
单向链表缺少了双向链表中指向前一个节点的指针,也就是只有只想下一个节点的指针。
使用理解:
单向链表在使用时,如果要删除一个节点,则需要总第一个节点开始查找需要删除的节点,并保存上一个已查找过的不符合条件节点,当找到需要删除的节点可以利用已保存的上个节点信息实现当前节点的删除。链表的遍历方向只能是单向。
双向链表在使用时,如果要删除一个节点,则可以实现两个方向查找目标节点,并且不需要保存任何节点信息,找到目标节点后直接可以实现该节点的删除。双向链表可以实现两个方向的遍历,提高了查询的速度。
双向链表和单向链表
最新推荐文章于 2024-07-29 17:54:45 发布