8.STL简介

  1. vector

变量声明:vector<类型> 变量名;例如vector<int> a;

vector<int> a(10,3);//容器里面有十个3

vector中所带的函数:

clear() 清除容器内的所有值;

push_back()在容器最后面插入一个元素;

例如:向容器中插入元素:

vector<int> a;
for(int i=0;i<10;i++) a.push_back(i);

pop_back()把容器最后一个元素删除;

size()返回元素个数;

例如:遍历容器元素:

vector<int> a;
for(int i=0;i<a.size();i++) cout<<a[i];

empty()判断容器是否为空

begin()返回容器第0个数,end()容器的最后一个数的后一个数

vector支持比较运算,但是比较大小的依据是字典序(在字典中,单词是按照首字母在字母表中的顺序进行排列的,比如 alpha 在 beta 之前。而第一个字母相同时,会去比较两个单词的第二个字母在字母表中的顺序)

insert(要插入的地址,要插入的元素)

v.insert(v.begin()+2,-1); //将-1插入v[2]的位置

erase()删除元素,可以删除指定的元素,也可以删除一个区间内的元素

v.erase(v.begin()+3);//删除v[3]的元素
v.erase(v.begin()+1,v.begin()+4);//删除v[1]到v[3]的元素

2.set

set(集合),是一个内部自动有序不含重复元素的容器。

set可以在需要去重复元素的情况大放异彩,节省时间,减少思维量。

要使用set,需要添加头文件:#include<set>

set的定义:

set<类型> 变量名;//类型可以是int,double等等也可以是STL容器例如vector,set,queue
set<int> arr[10];//数组的定义,长度为十

在set容器内,只能用迭代器(iterator)访问

set<int>::iteratorit;set<char>::iteratorit;

这样,就得到了迭代器it,并且可以通过*it来访问set里的元素。

由此,可以用如下代码遍历容器内的所有元素:

for(set<int>::iterator it=st.begin();it!=st.end();it++)
cout<<*it<<endl;

insert()插入元素

find(value)返回的是set中value所对应的迭代器,也就是value的指针(地址)

set<int>::iterator it = st.find(2); //在set中查找2,返回其迭代器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值