欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 【C++ 容器】vector、list、deque三者的区别以及使用场景

【C++ 容器】vector、list、deque三者的区别以及使用场景

2024/10/26 1:23:38 来源:https://blog.csdn.net/Hou_lang_LJ/article/details/142546221  浏览:    关键词:【C++ 容器】vector、list、deque三者的区别以及使用场景

文章目录

      • 1. vector
      • 2. list
      • 3. deque(双端队列)
      • 4. 使用场景

1. vector

  • 🐧vector的内存是连续的,支持随机访问;

2. list

  • 🐧list的底层结构是双向链表,存储是不连续的,随机插入和删除的效率高
  • 🐧list需要维护两个指针,一个指针指向前一个元素,另外一个指针指向后一个元素,内存消耗大;

3. deque(双端队列)

  • 🐧deque底层是连续的,可以把 deque看成是 vectorlist结合版
  • 🐧deque提供两级数据结构,第一级完全类似vector,代表实际容量,另一级维护容器的首位地址;

优点
<1>支持两端进行插入和删除数据;
<2>支持随机访问;

4. 使用场景

  • ⚽①需要随机访问数组并且不需要考虑插入和删除的效率时,使用vector
  • 🏀②需要频繁的插入和删除操作,并且不需要随机访问,使用list
  • 🏐③需要随机存储,且关心两端数据的插入和删除操作,则应该使用deque

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com