C++ STL教程-list

目录

    • C++ list(STL list)容器完全攻略(超级详细)
    • C++ STL list迭代器及用法(详解版)
    • C++ STL list删除元素详解

C++ list(STL list)容器完全攻略(超级详细)

STL list 容器,又称双向链表容器,即该容器的底层是以双向链表的形式实现的。这意味着,list 容器中的元素可以分散存储在内存空间里,而不是必须存储在一整块连续的内存空间中。

图 1 展示了 list 双向链表容器是如何存储元素的。
C++ STL教程-list_第1张图片
可以看到,list 容器中各个元素的前后顺序是靠指针来维系的,每个元素都配备了 2 个指针,分别指向它的前一个元素和后一个元素。其中第一个元素的前向指针总为 null,因为它前面没有元素;同样,尾部元素的后向指针也总为 null。

基于这样的存储结构,list 容器具有一些其它容器(array、vector 和 deque)所不具备的优势,即它可以在序列已知的任何位置快速插入或删除元素(时间复杂度为O(1))。并且在 l

你可能感兴趣的:(C++)