小明的数组讲解与相关成员函数

小明的数组

大家好,欢迎来到STL系列课堂,我是隔壁老王,时刻准备更新博客

题目描述:
小明很开心地发现了一个功能强大的从零开始的数组,这个数组能实现以下功能:
1.插入一个元素到某个位置
2.删除一个指定位置的元素
3.询问数组中的第几个元素是什么
4.询问数组的长度
5.加入一个元素在数组的最后位置。
请你也写出一个代码实现以上功能

输入:
第一行一个整数n(n≤100000)表示操作的个数。接下来n行每一行表示一个操作,每一行首先有一个整数k表示要实现第几个功能。当k=1时接下来有两个整数x,y表示把y这个元素插到x位置上。当k=2时接下来有一个整数x,表示删除x位置的元素。当k=3时接下来有一个整数x表示询问位置x上的元素是什么。当k=4时接下来不存在整数,表示询问数组的长度。当k=5时接下来存在一个整数x表示把x加入数组的最后。

输出:
若干行,每一行表示一个询问的答案。

样例输入:
10
5 1
5 2
3 1
4
1 1 3
2 2
4
3 1
5 3
4`

样例输出:
2
2
2
3
3

题目出处:https://jsswoj.com/oj/#main/show/1418

这道题如果是接触过STL的人都明白,这道题使用vector容器解决,用普通的数组是会超时的。下面就给大家带来一些vector的成员函数:

vector<int> a;//定义vector数据类型为int的a
a.begin();//返回a头元素的迭代器(简单的可以理解为指针)
a.end();//返回a尾元素再后一位的迭代器(不可以直接解引用)
a.push_back(x); //将x插入a的尾部
a.insert(a.begin()+n,x)//在第n个位置插入x
a.erase(a.begin()+n)//删除在n的元素
a.size()//返回a的元素个数
a.at(x)//返回在x位置的元素,作下标检查
a[x]//返回在x位置的元素,不作下标检查

还要记得包含头文件vector噢!
希望这些成员函数可以帮助大家!!!

如果有什么问题,可以在下方评论噢!!!

下期:小明学单词 STL之map

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值