zl程序教程

您现在的位置是:首页 >  其他

当前栏目

list容器常用概念

2023-09-14 09:02:34 时间

ist容器常用概念

功能:将数据进行链式存储
链表的组成:由一系列节点组成
节点的组成:由数据域和指针域组成
STL中的链表是一个双向循环链表
下图为一个双向链表,并未产生循环:
在这里插入图片描述
因为链表的存储不是连续的内存空间,因此链表中的迭代器只支持前移和后移(无法实现begin()+2,+3…操作),属于双向迭代器
在这里插入图片描述
list有一个重要性质,插入操作和删除操作都不会造成原有list容器失效,这在vector是不成立的,因为当所要输入数据大于vector容量的时候,vector容器会开辟一块更大空间来存放,之前的容器失效

list和数组相比的优缺点:

  1. list的优点:可以对任意位置快速进行插入和删除元素
  2. list的缺点:容器遍历速度没有数组快,占用空间较大,因为多出个指针域

总结:list和vector是最常用的容器,两者各有优缺点