【记录】vector基本使用

vector

描述:
相对于array,vector是一种动态空间,随着元素的加入,它会自动扩充空间以容纳新的元素。

初始化:

vector<int> n;
vector<int> n = {1,2,3,3};
vector<int> n(10,5); //初始化为10个5
vector<int> n(10); //初始化10个int类型的vector,值不确定
vector<int> n(a.begin(),a.begin()+5); //将a中的第0-5共6个值复制给n;

vector<vector<int> > n(5,vector<int>(6)); //二维vector, 5行6列

基本操作:
大小

n.size();    //返回vector元素个数

n.capacity();  //当前vector所能容纳的最大元素值

n.empty();   //判断vector是否为空

n.resize(a); //改变元素个数,小于a个则随机填充,多于a个则删除
n.resize(a,7); //改变元素个数,小于a个则填充7,多于a个则删除

n.reserve(n); //改变vector分配空间大小

访问

n.begin();   //返回指向第一个元素的iterator

n.end();     //返回指向最后一个元素的后一个iterator

n.rbigin()   //反向迭代器,指向最后一个元素的一位

n.rend()     //反向迭代器,指向第一个元素

n.front();  //返回n的第一个元素的引用

n.back();   //返回n的最后一个元素的引用

n.at(5); //返回第五个位置的引用
vector<int>::iterator it;
for(it = n.begin();it!=n.end();it++)
{
	cout<<*it<<endl;
}

修改:

n.push_back(6);  //在vector末尾插入元素6

n.pop_back();   //删除vector末尾元素

n.insert(n.bigin()+3,4);     //在index=2的位置插入4
n.insert(n.begin()+3,4,6);   //在index=2的位置插入4个数,其值为6
n.insert(n.bigin()+2,b+2,b+7);  //在index=1的位置插入b中index = 1-5的元素

n.erase(n.bengin(),n.bingin()+4);  //删除指针所指数据项

n.clear();    //清空n中的数据

常用算法

#include<algorighm>
vector<int> n = {1,2,3,4,5};
sort(n.begin(),n.end());  //排序
reverse(n.begin(),n.end());  //倒置
find(n.begin(),n.end(),6);   //查找元素6,返回下标位置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值