栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

vector容器用法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

vector容器用法

一·功能:

 

 二·初始化

(1)vector a(10);//定义了10个整型元素的向量(尖括号中为元素类型名,它可以是任何合法的据类型),但没有给出初值,其值是不确定的。

(2) vector a(10,1);//定义了10个整型元素的向量,且给出每个元素的初值为1

(3) vector a(b);//用b向量来创建a向量,整体复制性赋值

(4) vector a(b.begin(),b.begin+3);//定义了a值为b中第e个到第2个(共3个)元素

(5)int b[7]=(1,2,3,4,5,9,8];

vecctor a(b.b+7);  //从数组中获得初值

 三·对象

(1) a.assign(b.begin(), b.begin()+3);//b为向量,将b的9~2个元素构成的向量赋给a

(2) a.assign(4,2);//是a只含4个元素,且每个元素为2

(3)a.back();//返回a的最后一个元素

(4) a.front();//返回a的第一个元素

(5) a[i];//返回a的第1个元素,当且仅当a[i]存在2013-12-07

(6) a.clear();//清空a中的元素

(7)a.empty();//判断a是否为空,空则返回ture,不空则返回false

(8) a.pop_back();//删除a向量的最后一个元素

(9) a.erase(a.begin()+1,a.begin()+3);//删除a中第1个(从第0个算起)到第2个元素,也就是说删除的元素从a.begin()+1算起(包括它)一直到a.begin()+ 3(不包括它)

(10) a.push_back(5);//在a的最后一个向量后插入一个元素,其值为5

(11) a.insert(a.begin()+1,5);//在a的第1个元素(从第0个算起)的位置插入数值5,如a为1,2,3,4,插入元素后为1,5,2,3,4

(12) a.insert(a.begin()+1,3,5);//在a的第1个元素(从第0个算起)的位置插入3个数,其值都为5

(13)a.insert(a.begin()+1,b+3,b+6);//b为数组,在a的第1个元素(从第0个算起)的位置插入b的第3个元素到第5个元素(不包括b+6),如b为1,2,3,4,5,9,8 ,插入元素1,4,5,9,2,3,4,5,9,8

(14)a.size();//返回a中元素的个数;

(15)a.capacity();//返回a在内存中总共可以容纳的元素个数

(16) a.resize(10);//将a的现有元素个数调至10个,多则删,少则补,其值随机

(17) a.resize(10,2);//将a的现有元素个数调至10个,多则删,少则补,其值为2

(18)a.reserve(100);//将a的容量(capacity)扩充至100,也就是说现在测试a.capacity();的时候返回值是100.这种操作只有在需要给a添加大量数据的时候才 显得有意义,因为这将避免内存多次容量扩充操作(当a的容量不足时电脑会自动扩容,当然这必然降低性能)

(19) a.swap(b);//b为向量,将a中的元素和b中的元素进行整体性交换

(20)a==b;//b为向量,向量的比较操作还有!=,>=,<=,>,<

 四·举例

 链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

题目描述

给定 n (2≤n≤100)(2 leq n leq 100)(2≤n≤100) 个非负整数  a1,a2,...,ana_1,a_2,...,a_na1​,a2​,...,an​ ,每个数代表第  i 个木板的高度 h(1≤h≤100001 leq h leq 100001≤h≤10000  单位 m),忽略木板体积,木板宽度为 1m。现在把这些木板间隔 1m 均匀的放在一个大小合适的容器内。你需要找出两条木板,使得他们之间构成的容器可以容纳最多的水。

俩木板选定之后会拆除其他木板,你只用计算这俩木板组成容器的容积。

输入描述:
题目有多组数据,第一行 T 表示数据组数
每组数据第一行 n
接下来一行为 n 个木板的高度,空格分隔。
输出描述:
给出每组能容纳最多的水的体积。

示例1

输入

复制1 9 1 8 6 2 5 4 8 3 7

1
9
1 8 6 2 5 4 8 3 7
输出

复制49

4

代码如下:

#include
using namespace std; 
int main(){
	int T;
	cin>>T;
	while(T--){
		int n;
		cin>>n;
		vector s(n);
		for(int i=0; i>s[i];
		int M=0;
		int i=0,j=n-1;
		while(is[j])j--;
			else i++;
			M=max(M,k);
		}
		cout< 

以上是我对vector的理解,要是写的不好,请多多包涵!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1013211.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号