容器deque/vector/list/map/set

文章详细介绍了C++中的顺序容器和关联容器的常见成员函数,如begin(),end(),rbegin(),rend(),front(),back()等,以及它们在vector,deque和list中的不同特性。顺序容器如vector强调连续内存和动态数组,deque支持快速双端操作,而list则提供任意位置的快速插入和删除,但牺牲了随机访问性能。
摘要由CSDN通过智能技术生成

一、顺序容器和关联容器还有以下成员函数:

1.begin():返回指向容器中第一个元素的迭代器。
2.end():返回指向容器中最后一个元素后面的位置的迭代器。
3.rbegin():返回指向容器中最后一个元素的反向迭代器。
4.rend():返回指向容器中第一个元素前面的位置的反向迭代器。
5.erase(...):从容器中删除一个或几个元素。该函数参数较复杂,此处省略。
6.clear():从容器中删除所有元素。

注意:

如果一个容器是空的,则 begin() 和 end() 的返回值相等,rbegin() 和 rend() 的返回值也相等

二、顺序容器还有以下常用成员函数:

1.front():返回容器中第一个元素的引用。
2.back():返回容器中最后一个元素的引用。
3.push_back():在容器末尾增加新元素。
4.pop_back():删除容器末尾的元素。
5.insert(...):插入一个或多个元素。该函数参数较复杂,此处省略。

三、区别

vector:连续内存、动态数组(声明未确定数组大小,可有效利用存储空间),结尾处插入删除元素时间固定,但头部或中间时间复杂度呈线性

deque:实现类似vector、双端队列、访问首元素的插入push_front与删除pop_front时间固定,而且执行速度很快;所以需要大量对序列的起始位置或结尾处操作时使用deque

list:链表、在任意位置插入删除 时间都固定!不能随机访问,优点 随意插入删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值