zoukankan      html  css  js  c++  java
  • deque

    deque

    1.初始化

    ① 初始化一个双端队列

    deque <int> dq
    

    ② 复制一个双端队列

    deque <int> dq2(dq);
    

    2.求长度(时间复杂度为O(1))

    a.size();
    

    3.判空(时间复杂度为O(1))

    a.empty();
    

    4.清空

    a.clear();
    

    5.随机访问

    a.front(); // 取第一个数
    a.back();  // 取最后一个数
    a[10];  // 取第11个元素,下标为10
    

    6.删除元素/插入元素

    vector<int> a;
    a.push_back(1);   // 在末尾插入一个元素
    a.pop_back();  // 在末尾删除一个元素
    a.push_front(1);  // 在开头插入元素
    a.pop_front();  // 在开头删除元素
    

    7.迭代器

    vector<int> a;
    a.begin();  // 第一个元素的迭代器
    a.end();  // 最后一个元素的下一位的迭代器
    

    8.遍历

    // 1.迭代器遍历
    for (deque <int> ::iterator it = dq.begin(); it != dq.end(); ++it) 
        cout << *it << ends;
    
    // 2.下标遍历
    for (int i = 0; i < dq.size(); ++i) cout << dq[i] << ends;
    
    // 3. c++方式遍历
    for (auto ai: a) cout << ai << ends;
    

    9.插入

    dq.insert(dq.begin(),1);  // 在dq的头部插入1
    dq.insert(dq.begin(),3,1);  // 在dq的头部插入3个1
    dq.insert(dq2.begin(),dq.begin(), dq.end());  // 在dq2的头部插入dq的begin()到dq的end()部分
    
  • 相关阅读:
    sc输入输出
    sc基本语法
    sp启动执行
    sp的配置安装
    软件质量属性的代码层实现
    以淘宝网为例描述常见质量属性场景
    架构漫谈读后感
    《架构之美》阅读笔记三
    《架构之美》阅读笔记二
    大三寒假学习进度笔记Day25
  • 原文地址:https://www.cnblogs.com/spciay/p/13510231.html
Copyright © 2011-2022 走看看