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. Python压缩文件/文件夹

    [Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...

  2. js面试必考:this

    this是前端面试中必考的基础知识点,也是新手小白在做项目中经常晕头转向的问题.但其实this不难理解. 判断this指向时,记住以下几点: 判断函数类型, 1.1 如果是箭头函数,则为第一个包裹箭头 ...

  3. Node Sass does not yet support your current environment: Linux 64-bit with Unsupported runtime

    环境: ubuntu18 webstorm vue项目 报错原因: 缺少相关依赖 解决方法: npm rebuild node-sass 还未解决: npm uninstall --save node ...

  4. python笔记心得

    1.字典的映射 day=10# def get_sunday():# return 'Sunday'# def get_monday():# return 'monday'# def get_tues ...

  5. navicat12破解详细教程

    以管理员身份运行此注册机: 运行注册机 打开注册机后,1) Patch勾选Backup.Host和Navicat v12,然后点击Patch按钮: 默认勾选 找到Navicat Premium 12安 ...

  6. C++11常用特性介绍——auto类型修饰符

    1.C++11常用特性介绍 从本篇开始介绍C++11常用特性,大致分:关键字及新语法.STL容器.多线程.智能指针内存管理,最后讲一下std::bind和std::function 二.关键字和新语法 ...

  7. Spring MVC中的ResponseEntity和ResponseBody的区别

    1.ResponseEntity的优先级高于@ResponseBody. 在不是ResponseEntity的情况下才去检查有没有@ResponseBody注解. 如果响应类型是ResponseEnt ...

  8. 【C++初学者自学笔记一】(把自己刚学到的东西做一下总结,如果有哪些地方不足请留言指正)

    这是我写的第一个博客关于C++的一些笔记,我不会写的太深奥,因为这样很多人会看不懂(我刚开始学C语言深受其害).个人觉得C++这门语言有些类似于C语言但是有些函数的用法还是有不一样的.C语言中的头文件 ...

  9. Flask - 总结

    1. Flask.Django.Tornado框架区别 2. Flask快速入门 3. 配置文件 4. 路由系统 5. 模板 6. 请求&响应相关 7. session & cooki ...

  10. C# DataSet与DataTable的区别和用法 ---转载

    C# DataSet与DataTable的区别和用法 转载:https://www.cnblogs.com/liuyi-li/p/6340411.html DataSet是数据集,DataTable是 ...