双端链表和双链表之间的区别

时间:2015-02-04 19:24:52

标签: data-structures linked-list doubly-linked-list

我不明白双端和双重链接列表之间的区别。

两者之间的主要区别是什么?

4 个答案:

答案 0 :(得分:11)

在双向链表中,每个节点都有两个指针。一个朝向下一个节点,另一个朝向其前一个节点。

enter image description here

在双端链表中,每个节点只有一个指向其下一个节点的指针。它与单端链表的区别在于,而不只是一个" head"节点,它包含两个这样的指针("第一个"和"最后一个"),所以有人能够从它的两端插入元素列表。

enter image description here

(最后的图片并不清晰,但它突显了两端的意义。)

答案 1 :(得分:2)

双向链表是一个列表,其中元素具有指向列表前后元素的指针。

双端列表来自我的理解与deque相同。这是一个队列,您可以从中添加和删除顶部和底部的项目。

答案 2 :(得分:1)

单链接它是单向的,它使用更少的内存,插入的复杂性是O(n)。虽然双链接是双向的(下一个和上一个),但它使用的内存比单个列表多,插入和删除的复杂性是O(n)。

答案 3 :(得分:1)

双头列表类似于普通的链表,但具有一个附加功能:对最后一个链结以及对第一个链结的引用。 在双向链接列表中,每个链接有两个对其他链接的引用,而不是一个。首先是到下一个链接,如普通列表中所示。第二个是上一个链接。