STL模板——vector详解

news/2025/2/27 23:11:01/

一、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);elseiter++;}

四、例题演示

题目描述

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

输入格式

输入包含三行:
第一行为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;
}

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


http://www.ppmy.cn/news/1023923.html

相关文章

29 | 广州美食店铺数据分析

广州美食店铺数据分析 一、数据分析项目MVP加/价值主张宣言 随着经济的快速发展以及新媒体的兴起,美食攻略、美食探店等一系列东西进入大众的眼球,而人们也会在各大平台中查找美食推荐,因此本项目做的美食店铺数据分析也是带有可行性的。首先通过对广东省的各市美食店铺数量…

【MySQL】初识

文章目录 几点概念增删改查&#xff08;CRUD&#xff09;对于数据库的CRUD对于表的CRUD对于列的CRUD 几点注意 几点概念 客户端&#xff1a;主动发送请求的一方 &#xff08;发送称为“请求”&#xff09; 服务器&#xff1a;被动接受请求的一方 &#xff08;接受称为“响应”…

QGraphicsView实现简易地图4『局部加载-地图漫游』

前文链接&#xff1a;QGraphicsView实现简易地图3『局部加载-地图缩放』 当鼠标拖动地图移动时&#xff0c;需要实时增补和删减瓦片地图&#xff0c;大致思路是计算地图从各方向移动时进出视口的瓦片坐标值&#xff0c;根据变化后的瓦片坐标值来增减地图瓦片&#xff0c;以下将…

【论文阅读】Deep Instance Segmentation With Automotive Radar Detection Points

基于汽车雷达检测点的深度实例分割 一个区别&#xff1a; automotive radar 汽车雷达 &#xff1a; 分辨率低&#xff0c;点云稀疏&#xff0c;语义上模糊&#xff0c;不适合直接使用用于密集LiDAR点开发的方法 &#xff1b; 返回的物体图像不如LIDAR精确&#xff0c;可以…

Vc - Qt - 绘制窗口背景色

要在Qt中绘制一个背景颜色&#xff0c;你可以使用Qt的绘图功能来完成。下面是一种简单的方法&#xff1a; 步骤1&#xff1a;在你想要绘制背景颜色的QWidget&#xff08;例如QMainWindow或QDialog&#xff09;的派生类中&#xff0c;重写 它的paintEvent函数。步骤2&#xff1a…

C#质检工具(StyleCop、SonarLint)

1、StyleCop StyleCop工具主要类似java中的checkStyle,是检查代码样式规范的工具。 1.1、StyleCop安装流程: 图1.1 图1.2 图1.3 安装StyleCop插件时可能会遇到下载特慢或卡住不动的情况,需注意: 1)网上说的关闭IPV6功能不管用 2)网上说的自动指定dns不管用 3)网上…

YoloV5/YoloV7优化:感受野注意力卷积运算(RFAConv),效果秒杀CBAM和CA等 | 即插即用系列

💡💡💡本文改进:感受野注意力卷积运算(RFAConv),解决卷积块注意力模块(CBAM)和协调注意力模块(CA)只关注空间特征,不能完全解决卷积核参数共享的问题 RFAConv| 亲测在多个数据集能够实现大幅涨点,有的数据集达到3个点以上 💡💡💡Yolov5/Yolov7魔术师…

明天就要去面试软件测试岗了,现在我能怎么做呢?

首先&#xff0c;时间已经不允许你进行大面积的专业复习&#xff0c;所以你应该做好能够立竿见影的准备工作&#xff1a; 1、整理好自己的仪表 先去理个发&#xff0c;让自己看起来精神一点&#xff0c;尤其是男生&#xff0c;整理头发&#xff0c;修修鬓角能够快速让人对自己…