STL之vector

17 篇文章 0 订阅
2 篇文章 0 订阅

vector可理解为一个长度可变的数组,当其内存接近于满时,便会申请内存,当其删减内容时,则会释放内存,vector的内存是动态的。vector支持随机访问,可像数组一样进行访问,但一般只在末尾进行插入。
vector的声明

#include<vector>   头文件
vector<int> a      长度变化的int数组
vector<int> b[100] 第一维是100,第二维变化的数组。

vector的函数

v.size()         求vector中元素个数
v.empty()        若为空返回true,否则返回false。
v.clear()        清空vector中的元素
v.push_back()    将一个元素从队尾消失
v.pop_back()     将一个元素插入到队尾
v.back()         返回vector最后一个元素,相当于*--v.end()和v[v.size()-1]
v.front()        指向队列顶端,相当于*v.begin()和v[0]
v.end()          v队尾元素
v.begin()        v开头元素

vector的简单应用
用vector代替邻接表保存有向图

void add(int x,int y){
    ver[x].push_back(y);
    edge[x].push_back(z);
}
//主函数中
for(int i=1;i<=ver[x).size();i++){
    int y=ver[x][i];
    z=edge[x][i];
    //有向边y,z
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值