首先和string一样要在开头

#include <vector>
#include <string>

和string一样,也算是一种容器,而且同属于STL(standard template library)里的好基友

1.初始化向量

        vector<int> a ;                                //声明一个int型向量a
vector<int> a() ; //声明一个初始大小为10的向量
vector<int> a(, ) ; //声明一个初始大小为10且初始值都为1的向量
vector<int> b(a) ; //声明并用向量a初始化向量b
vector<int> b(a.begin(), a.begin()+) ; //将a向量中从第0个到第2个(共3个)作为向量b的初始值

也可以用数组来初始化向量

        int n[] = {, , , , } ;
vector<int> a(n, n+) ; //将数组n的前5个元素作为向量a的初值
vector<int> a(&n[], &n[]) ; //将n[1] - n[4]范围内的元素作为向量a的初值

2.向量元素的输出和访问

普通的

      #include<iostream>
#include<vector> using namespace std ; int main()
{
vector<int> a(, ) ; //大小为10初值为0的向量a //对其中部分元素进行输入
cin >>a[] ;
cin >>a[] ;
cin >>a[] ; //全部输出
int i ;
for(i=; i<a.size(); i++)
cout<<a[i]<<" " ; return ;
}

在输出上,还可以使用迭代器,类似城管一样,一个一个不漏地弄出来vector里面的元素

比如在这种申明形式下

vector <int> a(b.begin(),b.begin()+);

中,可以使用城管iterator

    //全部输出
vector<int>::iterator t ;
for(t=a.begin(); t!=a.end(); t++)
cout<<*t<<" " ;

3.向量的基本操作

    >. a.size()                 //获取向量中的元素个数

    >. a.empty()                //判断向量是否为空

    >. a.clear()                //清空向量中的元素

    >. 复制
a = b ; //将b向量复制到a向量中 >. 比较
保持 ==、!=、>、>=、<、<= 的惯有含义 ;
如: a == b ; //a向量与b向量比较, 相等则返回1 >. 插入 - insert
①、 a.insert(a.begin(), ); //将1000插入到向量a的起始位置前 ②、 a.insert(a.begin(), , ) ; //将1000分别插入到向量元素位置的0-2处(共3个元素) ③、 vector<int> a(, ) ;
vector<int> b() ;
b.insert(b.begin(), a.begin(), a.end()) ; //将a.begin(), a.end()之间的全部元素插入到b.begin()前 >. 删除 - erase
①、 b.erase(b.begin()) ; //将起始位置的元素删除
②、 b.erase(b.begin(), b.begin()+) ; //将(b.begin(), b.begin()+3)之间的元素删除 >. 交换 - swap
b.swap(a) ; //a向量与b向量进行交换

4.二维向量

vector< vector<int> > b(, vector<int>());        //创建一个10*5的int型二维向量

输入输出的方式

          vector< vector<int> > b(, vector<int>(, )) ;

         //对部分数据进行输入
cin>>b[][] ;
cin>>b[][] ;
cin>>b[][]; //全部输出
int m, n ;
for(m=; m<b.size(); m++) //b.size()获取行向量的大小
{
for(n=; n<b[m].size(); n++) //获取向量中具体每个向量的大小
cout<<b[m][n]<<" " ;
cout<<"\n" ;
}

c++基础之向量Vector的更多相关文章

  1. C++向量(Vector)

    向量Vector: 向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器. 与string相同, vector 同属于STL(Standard Template L ...

  2. (转) 学习C++ -> 向量(vector)

      vector是向量类型,它是一种对象实体,具有值,所以可以看作是变量. 它可以容纳许多其他类型的相同实体,如若干个整数,所以称其为容器.   vector类与一般的Array类的区别在于:   1 ...

  3. C++向量 vector动态数组

    需要包含头文件, #include  <vector>    using namespace std; vector 容器与数组相比其优点在于它能够根据需要随时自动调整自身的大小以便容下所 ...

  4. Java知多少(78)Java向量(Vector)及其应用

    Vector(向量)是 java.util 包中的一个类,该类实现了类似动态数组的功能. 向量和数组相似,都可以保存一组数据(数据列表).但是数组的大小是固定的,一旦指定,就不能改变,而向量却提供了一 ...

  5. 学习C++ -> 向量(vector)

    一.向量的介绍 向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器. 与string相同, vector 同属于STL(Standard Template Lib ...

  6. 【线性代数】1-0:向量(Vector)

    title: [线性代数]1-0:向量(Vector) toc: true categories: Mathematic Linear Algebra date: 2017-08-28 10:01:2 ...

  7. 向量vector 容器浅析

    一.什么是vector? 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container).跟任意其它类型容器一样,它能够存放各种类型的对象.可以简单的认为,向量是一个能 ...

  8. 标准模板库中的向量(vector)

    //C++数据结构与算法(第4版) Adam Drozdek 著  徐丹  吴伟敏<<清华大学出版社>> 头文件:#include<vector> 向量是最简单的S ...

  9. PyTorch基础——词向量(Word Vector)技术

    一.介绍 内容 将接触现代 NLP 技术的基础:词向量技术. 第一个是构建一个简单的 N-Gram 语言模型,它可以根据 N 个历史词汇预测下一个单词,从而得到每一个单词的向量表示. 第二个将接触到现 ...

随机推荐

  1. MongoDB部署实战(一)MongoDB在windows平台分片集群部署

    前言-为什么我要使用mongodb 最近我公司要开发一个日志系统,这个日志系统包括很多类型,错误的,操作的,...用MongoDB存储日志,大量的日志产生,大量读写吞吐量很大的时候,单个Server很 ...

  2. 源码编译安装ceph

    标签(空格分隔): ceph,ceph安装,ceph运维 centos7系统,aarch64架构下安装最新版本的ceph(13.0.0),x86架构的环境无需修改脚本即可. 一,物理环境: 内核版本: ...

  3. JavaWeb---总结(十九)Session机制

    一.术语session session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session.有时候我们可 ...

  4. 使用springboot写一个简单的测试用例

    使用springboot写一个简单的测试用例 目录结构 pom <?xml version="1.0" encoding="UTF-8"?> < ...

  5. activemq安装运行及其在springboot中的queue和topic使用

    安装activemq 运行 springboot使用 依赖 配置 Producer Consumer ComsumerTopic 使用 安装activemq http://activemq.apach ...

  6. DFS leetcode

    把字符串转换成整数 class Solution { public: int StrToInt(string str) { int n = str.size(), s = 1; long long r ...

  7. py编码终极版

    说起python编码,真是句句心酸.算起来,反复折腾两个来月了.万幸的是,终于梳理清楚了.作为一个共产主义者,一定要分享给大家.如果你还在因为编码而头痛,那么赶紧跟着我咱们一起来揭开py编码的真相吧! ...

  8. Python 中的进程与 锁

    理论知识 操作系统背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操 ...

  9. classmethod VS staticmethod

  10. JAVA简单的文件I/O操作实例

    如果只是对文件进行普通的读写,可以不用文件流. 以下是实例: File file = new File("test1.txt"); //向文件写入数据的 PrintWriter p ...