【发布时间】:2014-10-30 18:25:50
【问题描述】:
简单链表:
struct Node {
int x;
Node *next;
};
从 STL 使用用户定义的简单链表和列表容器的主要优点/缺点是什么?拥有大量数据的 LL 的列表性能如何?
【问题讨论】:
-
在现代 C++ 中,您可以使用
std::forward_list- 与您的简单列表一样轻量级,但具有方便的 STL 样式界面。但vector通常是比这两个更好的选择。 -
所有 STL 容器的主要优点是:(1) 它们已经实现 - 您不必花费任何时间编写它们,(2) 它们已经被很好地使用并且很好- 测试过,因此可能与新代码相比没有错误,(3) 有大量 C++ 程序员已经知道如何使用它们。
-
“简单链表 Vs STL::list”,两者都没有,链表性能绝对糟糕。
-
根据 Bjarne Stroustrup
std::vector的说法,通常优于链表。 youtube.com/watch?v=YQs6IC-vgmo -
什么是
STL::list?通常当有人说STL时,我倾向于假设他们指的是标准库。但事实上,您在STL和list之间使用双冒号对其进行了格式化,这使得您看起来像是指的是一个实际上名为STL的库。也许this one?
标签: c++ stl linked-list