不同类型的链接列表!

时间:2010-03-05 08:54:05

标签: c data-structures linked-list

常用的链接列表有哪些不同类型?

我知道并使用了以下内容:

  1. 单链表
  2. 双重链接列表
  3. 循环清单
  4. 您使用过或知道的其他类型的列表是什么?

5 个答案:

答案 0 :(得分:5)

Skip lists不是真正的链接列表类型,但相关,非常neato。

好吧,它是一种链接列表或一组链接列表,具体取决于你如何对事物进行分类,但它具有O(log N)插入/选择功能,这对链接列表来说非常可爱。

答案 1 :(得分:5)

  1. Unrolled Linked List
  2.   

    在计算机编程中,展开的链表是链表上的变体,它在每个节点中存储多个元素。它可以显着提高缓存性能,同时减少与存储列表元数据(如引用)相关的内存开销。它与B树有关。 - 维基百科

    1. XOR Linked List
    2.   

      XOR链表是一种数据结构   用于计算机编程。他们   利用按位   独占分离(XOR)   操作,这里用⊕表示   减少存储要求   双重链表。 - 维基百科

答案 2 :(得分:4)

还有 multiply-linked list

  

在多重链接列表中,每个节点包含两个或多个链接字段,每个字段用于以不同的顺序连接同一组数据记录(例如,按名称,按部门,按出生日期等) )。 (虽然双向链表可以看作是多链表的特殊情况,但两个指令彼此相反的事实会导致更简单,更有效的算法,因此它们通常被视为一个单独的案例。)

答案 3 :(得分:3)

stacksqueues通常都是使用链接列表实现的,只是限制支持的操作类型。 unrolled linked list 是一个链接列表,其中每个节点都包含一组数据值。这样可以提高缓存性能,因为更多的列表元素在内存中是连续的,并且减少了内存开销,因为需要为列表的每个元素存储更少的元数据。

答案 4 :(得分:0)

我可能会想到能够从列表中的任何元素链接到第一个和最后一个元素的情况。如果没有其他人纠正我,我断言这称为高性能标记列表