✅作者简介:一名即将大三的计科专业学生,为C++,Java奋斗中 ✨个人主页:叶落秋白的主页 🔥系列专栏:C++STL快速上手 📃推荐一款模拟面试、刷题神器👉注册免费刷题
🔥前言
上一次分享的是string
容器的概念、基本使用和常用方法,在这之后我们来学习一个算法题中C++语言最火的一个容器——vector
,学习vector容器的底层概念并且会使用构造和他的的常用方法,让我们深入了解vector容器然后刷些C++算法题充实自己吧!
文章目录
vector容器的概念模型
- vector容器的概念模型
- vector容器的基本操作
- 构造函数
- 赋值操作
- 容量和大小
- 插入和删除
- 数据存取
- 互换容器
- 预留空间
- 📃结语
vector容器是一个单端数组(一般默认前端是封闭的)
- 示意图
vector和数组的区别
- 普通数组是静态空间,而vector可以进行动态扩展
- 动态扩展过程
并不是直接在原有空间中进行扩容,而是找到一个
更大
的空间,将原有数据拷贝
到大空间内,并释放
原有的空间 - vector容器的迭代器是支持
随机访问
的迭代器(功能强大)- 常用迭代器
- 常用迭代器
v.begin()
和v.end()
分别代表容器的第一个元素和最后一个元素的下一个位置;v.rbegin()
和v.rend()
则分别代表最后一个元素和第一个元素前面的位置;insert()
用来把元素插入到容器内
包括构造方法、赋值、计算容量和大小、插入删除等
构造函数- 创建vector容器的方法
函数原型:
vector v;
其中T是泛型,用来存放数据类型,这是默认构造函数,较为常用vector(v.begin(),viend());
将[v.begin(),v.end)前闭后开的区间内的元素拷贝给本身容器vector(n,elem);
构造函数将n个elem值拷贝给本身容器vector(const vector &ans);
拷贝构造函数
代码示例:
void printVector(vector& v)
{
for (vector::iterator it = v.begin(); it != v.end(); it++)
{
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?