• C++ STL容器之 deque


    C++ STL容器之 deque

    deque双端队列容器,与vector容器相比较,明显的优势是很高效的添加删除首尾元素,也较容易在任意位置插入元素。
    在deque容器首尾添加元素不会使任何迭代器失效,但在首尾删除元素会使指向被删元素的迭代器失效,在deque容器的任何其他位置添加或删除会使该容器的所有迭代器失效。

    1.deque创建对象

    (1)deque<int> de; //创建一个空的deque对象
    (2)deque<int> de(n);//创建有n个元素的deque对象
    (3)deque<int> de(n,value); //创建有n个元素的deque,每个元素的初始化值为value
    (4)deque<int> de1(n,value); deque<int>de2(d1); //拷贝一个deque对象的各个元素值,创建一个新的deque对象
    (5)int iArray[] = {1,2,3}; deque<int> de(iArray, iArray+3);//拷贝迭代器区间[first, last)的元素值,创建一个新的deque对象中

    2.deque的常用函数

    (1)void push_back(const T&) //在容器的尾端插入新元素value
    (2)void push_front(const T&) //在容器的首端插入新元素value
    (3)void pop_front() 删除deque的第一个元素
    (4)void pop_back() 删除deque的最后一个元素
    (5)iterator erase(iterator pos) 删除迭代器pos所指的元素
    (6)iterator erase(iterator first, iterator last) 删除迭代器区间[first, last)的所有元素
    (7)void clear() 调用erase函数,清除所有元素
    (8)reverse_iterator rbegin() //从尾部反向遍历
    (9)reverse_iterator rend() //从头部反向遍历
    (10)void swap(deque&) //用于deque的交换
    (11)bool empty()
    (12)size_type size()
    (13)size_type max_size()
    (14)reference front()
    (15)reference back()



  • 相关阅读:
    jdk1.7下载
    Java导入导出Excel工具类ExcelUtil
    对接支付宝沙箱测试代码参数设置
    对接支付宝遇到的坑sign check fail: check Sign and Data Fail
    eclipse 如何配置activity(无网络状态下)
    Redis的总结
    java实现给pdf文件加水印!
    java中位移算法!
    spring整合springmvc案例
    读书笔记
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3074674.html
Copyright © 2020-2023  润新知