Vector 动态数组

容器
•顺序式容器:

vecto–>动态数组,从末尾快速插入删除,直接访问任何元素
list–>双链表,从任何地方快速插入删除
deque–>双向队列,从前面与后面快速插入删除,直接访问任何元素
priority_queue–>优先队列,最高优先级元素总是最先出列
stack–>栈,后进先出、先进后出

•关联式容器:

set–>集合,快速查找,不允许有重复值
multiset–>快速查找,允许有重复值
map–>一对一映射,基于关键字快速查找,不允许有重复值
multimap–>一对多映射,基于关键字快速查找,允许有重复值

1.Vector

定义:

定义int类型数组

Vector < int > a ;//默认初始化,a 为空
Vector < int > b ( a ) ; //用a定义b 
Vector < int > a ( 100 ) ; //定义a有100个值为0的元素
Vector < int > a ( 100,x ) ;//定义a有100个值为x的元素

定义string类型数组

Vector < string > a ( 10,”null” ) ; //定义a有10个值为null的元素 
Vector < string > arr ( 10,”hello” ) ; //定义a有10个值为hello的元素 
Vector < string > b ( b (a.begin),a.end() ) ;// b是a的复制

定义结构型数组

Struct  point  { int x,y; } ;
Vector < point > a                       // a 用于存储坐标

定义多维数组:

vector < int >[110] ;//数组一维度是固定的110,而第二维是动态的

常用操作:

a.push_back(100);//在尾部添加元素
int  size = a.size(); //元素个数
bool  isEmpty = a.empty();//判断是否为空
cout << a [0];//输出首元素
a.insert(a.begin()+i,k);//中间插入,在第i个元素前插入k
a.push_back(x)//在尾部插入值为x的元素
a.insert(a.end(),n,x)//在尾部插入n个值为x的元素
a.pop_back();//删除末尾的元素
a.erase(a.begin()+i,a.begin()+j);//删除区间[i,j-1]的元素
a.erase(a.begin()+i);//删除第i-1个元素
a.resize(n);//调整数组大小为n
a.clear();//清空
reverse(a.begin(),a.end());//使用函数reverse()反转数组
sort(a.begin(),a.end());//使用函数sort()让数组从小到大排序
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值