C++学习笔记容器篇2(deque)

deque是双端队列,可以进行头尾操作并访问该容器中的任意元素。

#include<deque>
1、deque 构造函数

        deque<T> d                                           默认构造形式,T代表构造的元素类型

        deque<T>d1(d.begin(),d.end());             构造函数将(beg,end)区间的元素拷贝给本身

        deque<T>d2(n,ele);                                构造函数将n个T类型的ele元素拷贝给本身

        deque<T>d3(d);                 拷贝构造函数

2、插入和删除  注*:deque两端可操作

        d.push_back(ele);                 在容器尾部添加一个数据

        d.push_front(ele);                  在容器头部添加一个数据

        d.pop_back();                        删除容器最后一个数据

        d.pop_front();                         删除容器第一个数据

        //指定位置操作

        insert(pos,elem);                    在pos位置插入一个elem元素的拷贝,返回新数据的位置

        insert(pos,n,elem);                  在pos位置插入n个elem元素的拷贝,无返回值

        insert(pos,beg,end);                在pos位置插入[beg,end]区间的数据,无返回值

        C++学习笔记容器篇2(deque)

        clear();                                       清除容器中的所有数据

        erase(beg,end);                         删除区间[beg,end]区间的所有数据,返回下个数据的位置

        erase(pos);                                 删除pos位置的元素,返回下个数据的位置

       C++学习笔记容器篇2(deque)

    3、容器的赋值

        operator=                                                重载等号赋值

      C++学习笔记容器篇2(deque)

        assign(beg,end);                                     将[beg,end]区间的值赋给容器

        assign(n,elem)                                         将n个elem元素赋值给容器

      C++学习笔记容器篇2(deque)

4、大小操作

        deque<T>d;

        d.empty();                判断容器是否为空

        d.size();                    返回容器中的个数

        d.resize(num);          更新指定容器的长度为num,若容器变长,则以默认值(0)填充新位置,如果容器变短了,则末尾超出容器的长度的元素被删除。

        d.resize(num,ele);     与上面操作相仿,就是如果容器变长,则以ele元素填充新的位置。

5、数据的存取与排序

        d.at(index);                在index位置的数据操作

        operator[];                  函数内部的[] 函数重载

        d[1];                         

        d.front();                       返回容器头部的值

        d.end();                         返回容器尾部的值

        sort(iterator beg,iterator end);   对beg到end区间的元素进行排序 

 

         

上一篇:【剑指Offer1】0~n-1中缺失的数字


下一篇:最短路算法入门