向量容器vector操作
1.向量容器vector
1.1 vector说明
- 进行vector操作前应添加头文件#include<vector>;
- vector是向量类型,可以容纳许多类型的数据,因此也被称为容器;
- 可以理解为动态数组,是封装好了的类,可以在运行阶段设置长度;
- 具有数组的快速索引方式;
- 可以插入和删除元素。
1.2 建议使用场景
- 开始就知道元素的数量;
- 对数据的索引和随机访问频繁;
- 插入和删除大多数在尾端。
1.3 vector初始化
使用格式:vector<数据类型> 变量名
常用的方式有如下几种:
- 方式1:
/* 定义一个整型向量(大小没有指定,可以动态的向里面添加删除) */
vector<int> a
- 方式2:
/* 定义具有10个整型元素的向量(尖括号为元素类型名,它可以是任何合法的数据类型),不具有初值,其值不确定 */
vector<int> a();
- 方式3:
/* 定义具有10个整型元素的向量,且给出的每个元素初值为1 */
vector<int> a(,);
1.4 常用操作
1.5 用例
#include<iostream>
#include<vector>
#include<algorithm> using namespace std;
int main()
{
int i;
/*定义一个double类型的向量容器,不指定容器的大小 */
vector<double> vectorDouble = {12.1, 12.2, 12.3, 12.4};
cout<<"普通遍历方式:"<<endl;
cout<<"插入数字前遍历:"<<endl;
/* 遍历容器中的成员 */
for(i = ; i < vectorDouble.size(); i++)
{
cout<<vectorDouble[i]<<endl;
}
/* 向容器中插入数字 */
vectorDouble.push_back(110.1);
cout<<"插入数字后遍历:"<<endl;
/* 遍历容器中的成员 */
for(i = ; i < vectorDouble.size(); i++)
{
cout<<vectorDouble[i]<<endl;
}
/* 集合通用的遍历方法:使用迭代器 iterator */
vector<double>::iterator it;
cout<<"使用迭代器方式遍历:"<<endl;
/* 遍历容器中的成员 */
for(it = vectorDouble.begin(); it != vectorDouble.end(); ++it)
{
cout<<*it<<endl;
}
cout<<"使用迭代器正排序:"<<endl;
/*正 排序 */
sort(vectorDouble.begin(), vectorDouble.end());
/* 遍历容器中的成员 */
for(it = vectorDouble.begin(); it != vectorDouble.end(); ++it)
{
cout<<*it<<endl;
}
cout<<"使用迭代器逆排序:"<<endl;
/* 逆排序*/
reverse(vectorDouble.begin(), vectorDouble.end());
/* 遍历容器中的成员 */
for(it = vectorDouble.begin(); it != vectorDouble.end(); ++it)
{
cout<<*it<<endl;
}
return ;
}
程序运行结果显示:
向量容器vector操作的更多相关文章
- C++STL之vector向量容器
vector向量容器 vector向量容器不但能向数组一样对元素进行随机访问, 还能在尾部插入元素 vector具有内存自动管理的功能, 对于元素的插入和删除, 可动态调整所占的内存空间 vect ...
- STL标准库-容器-vector
技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性. 向量容器vector是一个动态数组,内存连续,它是动态分配内存,且每次扩张的原来的二倍. 他的结构如下 一 定义 vector ...
- C++ STL中vector(向量容器)使用简单介绍
原文:http://www.seacha.com/article.php/knowledge/cbase/2013/0903/2205.html C++ vector(向量容器)是一个线性顺序结构.相 ...
- STL标准模板库 向量容器(vector)
向量容器使用动态数组存储.管理对象.因为数组是一个随机访问数据结构,所以可以随机访问向量中的元素.在数组中间或是开始处插入一个元素是费时的,特别是在数组非常大的时候更是如此.然而在数组末端插入元素却很 ...
- vector 向量容器用法祥解
vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法: ...
- vector向量容器(常用的使用方法总结)
关于STL中vector容器的学习,编译运行后边看代码,边看执行结果效果更佳,还是想说看别人的代码一百遍,不如自己动手写一遍. vector向量容器不但能像数组一样对元素进行随机访问,还能随时在尾部插 ...
- 学习笔记之vector向量容器
今天复习到vector向量容器,里面包括vector向量容器的一些优点以及具体的使用方法及代码,分享给大家. Vector向量容器不但能够像数组一样对元素进行随机访问,还可以在尾部插入元素,是一种简单 ...
- 利用copy函数简单快速输出/保存vector向量容器中的数据
如果要输出vector中的数据我们可以通过循环语句输出,更加简便的方法是利用copy函数直接输出,例子: #include "stdafx.h" #include <iost ...
- vector向量容器
vector向量容器不但可以像数组一样对元素进行随机访问,还能在尾部插入元素,是一种简单高效的容器,可以代替数组. vector具有内存自动管理的功能,对于元素的插入和删除,可以动态的调整所占内存. ...
随机推荐
- iOS项目开发日常之创建文件(协议、类、分类、扩展)
iOS项目开发过程中,是以不断创建文件的形式进行着的. 创建得比较频繁的文件类型是: 这两个类型中创建的文件有:子类.分类.扩展.协议四种文件,如下: 这四类文件是频繁创建的,我们来看一下各自分 ...
- Servlet 学习(三)
HTTP 请求的构成 1.HTTP 请求行: 请求方式,比如 GET .POST 等 本次请求的URI ,比如 /hello 协议和版本号 2. HTTP 请求报头: (头部/首部/请求头) 请求头和 ...
- C#操作Word的超详细总结 ---转载
C#操作Word的超详细总结 本文中用C#来操作Word,包括: 创建Word: 插入文字,选择文字,编辑文字的字号.粗细.颜色.下划线等: 设置段落的首行缩进.行距: 设置页面页边距和纸张大小: 设 ...
- shell脚本基础及重定向!
重定向: 补充:/dev/null(名叫黑洞)就是把输出的文件混合重定向到黑洞从而不显示在屏幕 yum -y install http &> /dev/null 重定向输入: 重定向输出 ...
- Electron调用C++的DLL
1. 安装ffi-napi npm install ffi-napi 2. c++ dll 注意,若electron是X64的,则dll也应为X64,同理32位. myAddDll是c++的dll ...
- ch8 固定宽度、流式、弹性布局
假设浏览器窗口设置为1250px:wrapper的宽度为960px:content的宽度为920px:确保了wrapper居中时两边有20px的间距: secondary的宽度为230px: pr ...
- MyBatis的2个核心对象:SqlSessionFactory、SqlSession
SqlSessionFactory SqlSessionFactory是单个数据库映射关系经过编译后的内存镜像,主要作用是创建SqlSession. InputStream inputStream = ...
- 高手教大家如何配置JVM参数
/usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K ...
- 《iOS设计模式解析》书籍目录
1.你好,设计模式 2.案例分析:设计一个应用程序 3.原型 4.工厂方法 5.抽象工厂 6.生成器 7.单例 8.适配器 9.桥接 10.外观 11.中介者 12.观察者 13.组合 14.迭代器 ...
- Scrapy 下载文件和图片
我们学习了从网页中爬取信息的方法,这只是爬虫最典型的一种应用,除此之外,下载文件也是实际应用中很常见的一种需求,例如使用爬虫爬取网站中的图片.视频.WORD文档.PDF文件.压缩包等. 1.Files ...