C++ Vector详解
- Vector是STL库中的一种数据结构,本质上而言,Vector是一种动态数组结构,何为动态数组?动态数组指的是,在内存上面是连续地址,但是在每次初始化数组的时候,都事先分配好一大块内存,然后再分配给数组元素。
- Vector的时间复杂度和数组是一样的
- Vector的增删改查的实现
- 增
实例代码:
vector<int> g_vec;g_vec.push_back(22);cout << g_vec[0] << endl; //时间复杂度 1
- 删
vector<int> g_vec;g_vec.push_back(22);cout << g_vec[0] << endl; //时间复杂度 1g_vec.pop_back(); //删除
- 插入
vector<int> g_vec;g_vec.push_back(22);cout << g_vec[0] << endl; //时间复杂度 1g_vec.pop_back(); //删除cout << g_vec.size() << endl;g_vec.push_back(12);g_vec.push_back(23);//插入vector <int>::iterator theIterator = g_vec.begin();g_vec.insert(theIterator,1,33);for (int i = 0 ; i < g_vec.size();i++){cout << g_vec[i] << endl;}
时间复杂度:
增:O(1)
删: O(1)
插入:O(n):因为插入后,后面的元素需要往后移
erase:O(n):同理
C++ Vector详解相关推荐
- STL 之vector详解
STL之vector容器详解 vector 容器 vector是C++标准模版库(STL,Standard Template Library)中的部分内容.之所以认为是一个容器,是因为它能够像容器一样 ...
- C vector详解
[导读]:vector是一个封装了动态大小数组的顺序容器(Sequence Container).跟任意其它类型容器一样,它能够存放各种类型的对象.可以简单的认为,vector是一个能够存放任意类型的 ...
- C++STL笔记(四):vector详解
vector结构 一.vector的构造函数和析构函数 二.vector的非更易型操作 三.vector的赋值操作 四.vector用以直接访问元素的各项操作 五.vector的迭代器相关函数 六.v ...
- C++ STL之vector详解
转自http://blog.sina.com.cn/s/blog_9f1c0931010180cy.html Vectors vector是C++标准模板库中的部分内容,它是一个多功能的,能够操 ...
- C++ -- vector详解
2019独角兽企业重金招聘Python工程师标准>>> 最近在重新学习C++,找到一篇比较好的介绍vector的文章,现记录下来,以下为转载,侵删. 1. 在C++中的详细说明 ve ...
- java list 在头部添加6_【Java提高十六】集合List接口详解
在编写java程序中,我们最常用的除了八种基本数据类型,String对象外还有一个集合类,在我们的的程序中到处充斥着集合类的身影!java中集合大家族的成员实在是太丰富了,有常用的ArrayList. ...
- 【STL详解】stack
文章目录 前言 一.STL? 二.stack 1. stack的创建 2. stack相关方法 3. 如何对satck进行排序 前言 本篇文章将总结SLT - stack,以及其常用方法. 一.STL ...
- Android vector标签 PathData 画图超详解
此文章来源于https://www.cnblogs.com/yuhanghzsd/p/5466846.html点击打开链接 Android vector标签 PathData 画图超详解 SVG是一种 ...
- c++中vector的用法详解
c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...
最新文章
- java 枚举转byte_如何在java中将一个枚举转换为另一个枚举?
- Opencv java 角点检测 preCornerDetect(15)
- oracle创建用户、表空间、临时表空间、分配权限步骤详解
- apache arrow mysql_新手搭建PHP环境必备知识:windows下PHP5+APACHE+MYSQ完整配置(个人总结)...
- vue调试工具vue-devtools安装及使用
- 根据 dba_errors 制定 数据库报警邮件
- CodeForces - 603C Lieges of Legendre(博弈+找规律)
- 技术大牛收割机!Java之父James Gosling现在哪里???
- angular 接入 IdentityServer4
- Bootstrap 3 与 Foundation 5 的区别
- MFC截图工具(不断更新)
- QT5.1.0,QT4.8.0以及VC2010、VC2012的测试对比
- limesurvey的问卷类型
- 面试智力题:赛马问题求前几名
- 特殊符号大全(建议收藏_复制着用_数学符号最下面)
- 关于边缘计算与区块链结合系统研究的综述
- php盘古分词,百度分词技术_百度输入法分词怎么关_百度分词原理
- 红帽8LINUX命令行使用技巧
- ubuntu系统下CodeLite与opencv配置
- Robomaster小陀螺
热门文章
- 我的JavaWeb学习2
- mysql 按时间分库分表_sharding-jdbc 按时间分库分表
- 解决 windows npm ERR! asyncWrite is not a function 问题
- 【★】EIGRP终极解析!
- 2017-10-22—发光二极管
- mac: brew的删除
- 【piu~】制作一只变形小鸡~
- Html TextArea 长度限制
- 什么样的外链才是高质量的外链|网站优化
- 案例:演示使用beantuils的setProperty()、getProperty()和populate()方法访问JavaBean的属性