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操作的更多相关文章

  1. C++STL之vector向量容器

    vector向量容器   vector向量容器不但能向数组一样对元素进行随机访问, 还能在尾部插入元素 vector具有内存自动管理的功能, 对于元素的插入和删除, 可动态调整所占的内存空间 vect ...

  2. STL标准库-容器-vector

    技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性. 向量容器vector是一个动态数组,内存连续,它是动态分配内存,且每次扩张的原来的二倍. 他的结构如下 一 定义 vector ...

  3. C++ STL中vector(向量容器)使用简单介绍

    原文:http://www.seacha.com/article.php/knowledge/cbase/2013/0903/2205.html C++ vector(向量容器)是一个线性顺序结构.相 ...

  4. STL标准模板库 向量容器(vector)

    向量容器使用动态数组存储.管理对象.因为数组是一个随机访问数据结构,所以可以随机访问向量中的元素.在数组中间或是开始处插入一个元素是费时的,特别是在数组非常大的时候更是如此.然而在数组末端插入元素却很 ...

  5. vector 向量容器用法祥解

    vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法:         ...

  6. vector向量容器(常用的使用方法总结)

    关于STL中vector容器的学习,编译运行后边看代码,边看执行结果效果更佳,还是想说看别人的代码一百遍,不如自己动手写一遍. vector向量容器不但能像数组一样对元素进行随机访问,还能随时在尾部插 ...

  7. 学习笔记之vector向量容器

    今天复习到vector向量容器,里面包括vector向量容器的一些优点以及具体的使用方法及代码,分享给大家. Vector向量容器不但能够像数组一样对元素进行随机访问,还可以在尾部插入元素,是一种简单 ...

  8. 利用copy函数简单快速输出/保存vector向量容器中的数据

    如果要输出vector中的数据我们可以通过循环语句输出,更加简便的方法是利用copy函数直接输出,例子: #include "stdafx.h" #include <iost ...

  9. vector向量容器

    vector向量容器不但可以像数组一样对元素进行随机访问,还能在尾部插入元素,是一种简单高效的容器,可以代替数组. vector具有内存自动管理的功能,对于元素的插入和删除,可以动态的调整所占内存. ...

随机推荐

  1. ios中为视图添加圆角

    1.使用 layer设置指定圆角 或者设定一个或几个圆角 码修 关注 2017.04.20 19:03* 字数 107 阅读 656评论 0喜欢 0 由于项目中需要给按钮左下 和左上加圆角,我司可爱的 ...

  2. C. Swap Letters 01字符串最少交换几次相等

    C. Swap Letters time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...

  3. Spring boot 中发送邮件

    参考:https://blog.csdn.net/qq_39241443/article/details/81293939 添加依赖: <dependency> <groupId&g ...

  4. exp之shellcode的理解

    原题请见 https://www.jarvisoj.com/challenges from pwn import * io = remote("pwn2.jarvisoj.com" ...

  5. ➡️➡️➡️leetcode 需要每天打卡,养成习惯

    目录 待完成的 完成的 0204 0203 以前 java 的 ! 的操作 不像 c 那样自由,!不要使用在int 变量上 c ^ 是异或操作 体会:c中,malloc 后的新建的数组,默认不是0(j ...

  6. spm_hrf

    a=spm_hrf(0.72); n1=MOTOR_taskdesign(1,:);cn1=conv(n1,a);plot(cn1); block design hrf

  7. Windows API—CreateEvent—创建事件

    事件是一个允许一个线程在某种情况发生时,唤醒另外一个线程的同步对象.事件告诉线程何时去执行某一给定的任务,从而使多个线程流平滑,CreateEvent是创建windows事件的意思,作用主要用在判断线 ...

  8. Lesson 13 The search for oil

    What do oilmen want to achieve as soon as they strike oil? The deepest holes of all are made for oil ...

  9. 学术Essay写作简单且稳定的架构解析

    学术essay写作(academic writing),无论是论文还是专著,间架要稳固,才有可读性,才有说服力. 稳,有几个应然特征:部块(parts)关联紧密:部块不外生枝叶:部块之间没有杂质干扰. ...

  10. 敌兵布阵-HDU1166 点修改+区间查询

    题目:C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况 ...