C++向量(Vector)
向量Vector:
向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器。 与string相同, vector 同属于STL(Standard Template Library, 标准模板库)中的一种自定义的数据类型, 可以广义上认为是数组的增强版。在使用它时, 需要包含头文件#include<vector>
向量的声明:
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的初值
向量的基本操作:
vector<int>s;
s.size();
s.empty();
s.clear();
s==s1 把s1复制到s中
s.insert();
s.erase();
s.swap(s1)
向量的代码:
int main(){
int a[]={,,,,};
vector<int>s(a,a+);
for(int i=;i<(int)s.size();i++){
cout<<s[i]<<endl;
}
vector<int>::iterator it=s.begin();
while(it!=s.end()){
cout<<*it++<<endl;
}
vector< vector<int> >b(,vector<int>(,));
b[][]=;
b[][]=;
b[][]=;
b[][]=;
for(int i=;i<(int)b.size();i++){
for(int j=;j<(int)b[i].size();j++){
cout<<b[i][j]<<" ";
}
cout<<endl;
}
vector<int>c[];
c[].push_back();
c[].push_back();
c[].push_back();
c[].push_back();
for(int i=;i<;i++){
for(int j=;j<(int)c[i].size();j++){
cout<<c[i][j]<<" ";
}
cout<<endl;
}
int r[]={,,,,};
vector<int>g(r,r+);
g.insert(g.begin(),); //在第0个元素前面插入11
g.insert(g.begin()+,); //在第2个元素前面插入22
g.insert(g.end(),); //在最后一个元素后面插入123
g.insert(g.end()-,); //在倒数第1个元素前面插入123
cout<<*(g.begin()+)<<endl; //输出第3个元素
int k[]={,,,,,,};
vector<int>e(k,k+);
//e.erase(e.begin()); //删除第0个元素
//e.erase(e.begin()+2); //删除第2个元素
//e.erase(e.end()-1); //删除最后一个元素
e.erase(e.begin()+,e.begin()+); //删除第2到第3之间的两个元素
for(int i=;i<(int)e.size();i++){
cout<<e[i]<<" ";
}
cout<<endl;
}
C++向量(Vector)的更多相关文章
- (转) 学习C++ -> 向量(vector)
vector是向量类型,它是一种对象实体,具有值,所以可以看作是变量. 它可以容纳许多其他类型的相同实体,如若干个整数,所以称其为容器. vector类与一般的Array类的区别在于: 1 ...
- C++向量 vector动态数组
需要包含头文件, #include <vector> using namespace std; vector 容器与数组相比其优点在于它能够根据需要随时自动调整自身的大小以便容下所 ...
- Java知多少(78)Java向量(Vector)及其应用
Vector(向量)是 java.util 包中的一个类,该类实现了类似动态数组的功能. 向量和数组相似,都可以保存一组数据(数据列表).但是数组的大小是固定的,一旦指定,就不能改变,而向量却提供了一 ...
- c++基础之向量Vector
首先和string一样要在开头 #include <vector> #include <string> 和string一样,也算是一种容器,而且同属于STL(standard ...
- 学习C++ -> 向量(vector)
一.向量的介绍 向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器. 与string相同, vector 同属于STL(Standard Template Lib ...
- 【线性代数】1-0:向量(Vector)
title: [线性代数]1-0:向量(Vector) toc: true categories: Mathematic Linear Algebra date: 2017-08-28 10:01:2 ...
- 向量vector 容器浅析
一.什么是vector? 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container).跟任意其它类型容器一样,它能够存放各种类型的对象.可以简单的认为,向量是一个能 ...
- 标准模板库中的向量(vector)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>> 头文件:#include<vector> 向量是最简单的S ...
- 对多维向量vector<vector<int> > vec进行操作
直接写作vector<vector<int> > vec在VC++6.0下编译不过改做: typedef std::vector<int> ROW; s ...
随机推荐
- 线性表集合A=A B
大话数据结构 void union(List *a, List Lb) { int La_len, Lb_len, i; ElemType e; La_len = ListLength(La); Lb ...
- PureBasic 集成Form设计器的使用
The PureBasic IDE has a very powerful integrated form designer, which allows to design easily window ...
- jdk1.7
http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-windows-i586.exe?AuthParam=1450748157_ ...
- windows下Qt5.1.0配置android环境搭建 good
1.首先下载好需要配置的软件: 1>Qt 5.1.0 for Android (Windows 32-bit, 716 MB)(Info)下载地址: http://qt-project.org/ ...
- frameset、frame、noframes和iframe的区别
原网站地址:http://nmyun.blog.51cto.com/448726/155268 ■ 框架概念 :所谓框架便是网页画面分成几个框窗,同时取得多个 URL.只需要 <frameset ...
- 正则表达式lastIndex属性浅析
有这样一段代码: var newDateStr = " 11 13:48:18"; var reg = new RegExp("[0-9]+","g& ...
- CSS3新添加的属性
1.圆角设置 border-radius:15px 50px 30px 5px; /*四个值: 第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下 角. 三个值: 第一个值为左上角, ...
- Linux下对各种压缩文件处理
Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲ta ...
- vb 修改数据库
Dim rscode As New ADODB.Recordset ................... Set RsCode = zwpub.DataMdb.DbConnect.Execute(& ...
- Foundation和CoreFoundation之间的转换
Foundation是OC的东西,CoreFoundation是C语言的东西 eg: NSString\NSArray\NSDictionary 属于Foundation CFStringRef\CF ...