【问题标题】:Doubly linked, cyclic list in standard library标准库中的双向链接循环列表
【发布时间】:2014-03-06 03:16:52
【问题描述】:

我需要双向链表,但在 STL 容器中找不到它(单链循环表也是如此)。

它可能看起来像这样:

element 0   <->   element 1  <-> ... <-> ...

    ^                                     ^
    |                                     |
    v                                     v

element n   <->   element n-1   <->   element n-2

你能告诉我我错过了什么吗?提前致谢。

【问题讨论】:

  • 你没有错过任何东西。标准库中没有这样的容器。
  • 您将如何使用 STL 遍历循环列表?你会期望它无限循环吗?
  • 没有。距离起始元素只有一个周期。
  • 双向链表很有用模式,通常用于许多定义明确的用例。虽然我不希望它们是循环的,但不知道我是在head 还是tail。通常我让head 节点的previous 指针指向NULL,并相应地让尾部的next 指针指向。这使得任何操作实现都变得更加容易。
  • 线性列表在一种情况下有用,循环列表在另一种情况下有用。是不同的图案。在我的情况下,HEAD 在哪里并不重要。

标签: c++ linked-list c++-standard-library


【解决方案1】:

你没有错过任何东西。标准库中没有这样的容器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-14
    • 2021-07-05
    • 1970-01-01
    • 2013-11-15
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    相关资源
    最近更新 更多