c++deque赋值操作,大小操作,插入和删除,数据存取,数据排序

赋值操作函数原型:
deque& operator=(const deque &deq); //重载等号操作符
assign(beg, end); //[beg, end)区间中的数据拷贝赋值给本身。
assign(n, elem); //nelem拷贝赋值给本身。

也是和vector基本一致,=和assign的使用

 

大小操作函数原型:
deque.empty(); //判断容器是否为空

deque.size(); //返回容器中元素的个数
deque.resize(num); //重新指定容器的长度为num,若容器变长,则以默认值填充新位置。
//如果容器变短,则末尾超出容器长度的元素被删除。
deque.resize(num, elem); //重新指定容器的长度为num,若容器变长,则以elem值填充新位置。
//如果容器变短,则末尾超出容器长度的元素被删除。

和vector基本一致,主要的区别就在于deque没有capacity,而是可以无限的扩展

 

函数原型:
两端插入操作:
push_back(elem); //在容器尾部添加一个数据
push_front(elem); //在容器头部插入一个数据
pop_back(); //删除容器最后一个数据
pop_front(); //删除容器第一个数据
指定位置操作:
insert(pos,elem); //pos位置插入一个elem元素的拷贝,返回新数据的位置。
insert(pos,n,elem); //pos位置插入nelem数据,无返回值。
insert(pos,beg,end); //pos位置插入[beg,end)区间的数据,无返回值。
clear(); //清空容器的所有数据
erase(beg,end); //删除[beg,end)区间的数据,返回下一个数据的位置。
erase(pos); //删除pos位置的数据,返回下一个数据的位置。

和vector使用基本一样,主要的区别在于有了头尾操作之分。back代表尾端,也就是最新进入的数据,front代表首端,也就是最早进入的数据

 

函数原型

at(int idx); //返回索引idx所指的数据
operator[]; //返回索引idx所指的数据
front(); //返回容器中第一个数据元素
back(); //返回容器中最后一个数据元素

和vector的使用基本一样,主要区别在于能够返回头尾元素

 

sort(iterator beg, iterator end) //begend区间内元素进行排序

deque中的数据排序,注意输入的是迭代器,这个算法在algorithm头文件中,默认是升序排序的

对于所有支持随机访问的迭代器的容器,都可以使用sort

posted @   纸包鱼  阅读(129)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示