STL模板——vector详解

一、vector对象的定义和初始化方式

vector 中的数据类型 T 可以代表任何数据类型,如 int、string、class、vector(构建多维数组) 等,就像一个可以放下任何东西的容器,因此 vector 也常被称作容器。字符串类型 string 也是一种容器,c++ 中的不同种类的容器拥有很多相同的操作,因此 string 的很多操作方法可以直接用在 vector 中。vector很想数组,但vector类型不限大小,是一个动态数组。

二、vecto的常用函数模板库

push_back() 向vector从尾部添加一个元素

begin() 访问vector的第一个元素

end() 访问vector的左最后一个元素

rbegin() 逆向访问vector的第一个元素(即最后一个元素)

rend() 逆向访问vector的最后一个元素(即第一个元素)

三、迭代器

begin()&end():
vector <int>::iterator
rbegin()&rend():
vector <int>::reverse_iterator

四、vector 常用基础操作

1.输入

	vector <int> v;
	int n, x;
	cin>>n;
	
	for(int i = 1; i <= n; i++)
	{
		cin>>x;
		v.push_back(x); 
	}

2.输出

1)顺序输出
​​for(vector <int>::iterator iter = v.begin(); iter != v.end(); iter++)
	cout<<*iter<<" ";
2)逆序输出 
for(vector <int>::reverse_iterator iter = v.rbegin(); iter != v.rend(); iter++)
	cout<<*iter<<" ";

3.删除

	cin>>q;
	for(it iter = v.begin(); iter != v.end();)
	{
		if(*iter == q)
			iter = v.erase(iter);
		else
			iter++;
	}

四、例题演示

题目描述

输出一个整数序列中与指定数字相同的数的个数。

输入格式

输入包含三行:
第一行为N,表示整数序列的长度(N <= 100);
第二行为N个整数,整数之间以一个空格分开;
第三行包含一个整数,为指定的整数m。

输出格式

输出为N个数中与m相同的数的个数。

样例输入
3
2 3 2
2
样例输出
2
参考代码
#include <iostream>
#include <cstdio>
#include <vector>
#define ll long long
using namespace std;
int main()
{
	vector <int> v;
	int q, n, x, cnt = 0;
	cin>>n;
	
	for(int i = 1; i <= n; i++)
	{
		scanf("%d", &x);
		v.push_back(x); 
	}
	
	cin>>q;
	
	for(vector <int>::iterator iter = v.begin(); iter != v.end(); iter++)
	{
		if((*iter) == q)
			cnt++;
	}
	
	cout<<cnt;
	return 0;
}

原题链接:与指定数字相同的数的个数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学废c++

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值