亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++中std::deque的使用

 更新時間:2024年03月28日 09:05:27   作者:賽先生.AI  
std::deque是C++標準庫中的一個雙端隊列容器,本文主要介紹了C++中std::deque的使用,具有一定的參考價值,感興趣的可以了解一下

1. std::deque

std::deque 是 C++ 標準庫中的一個雙端隊列容器。這個容器支持在序列的兩端進行快速的插入和刪除操作,其時間復雜度為常數時間 O(1)。同時,std::deque 也提供了對序列中任意元素的隨機訪問。

2. 特點

(1)雙端操作:在序列的開始和結束都可以進行元素的插入和刪除操作。

(2)隨機訪問:可以使用下標操作符 [] 或 at() 方法來訪問隊列中的任意元素。

(3)動態(tài)大小:std::deque 可以根據需要動態(tài)地增長或縮小。

3. 基本用法

(1)聲明std::deque

#include <deque>
std::deque<int> myDeque;

(2)插入元素

/** 在末尾插入 */
myDeque.push_back(10);
/** 在開頭插入 */
myDeque.push_front(20);
/** 在特定位置插入 */
myDeque.insert(myDeque.begin() + 1, 30);

(3)刪除元素

/** 刪除末尾元素 */
myDeque.pop_back();
/** 刪除開頭元素 */
myDeque.pop_front();
/** 刪除特定位置的元素 */
auto it = myDeque.begin();
it++; ///< 移動到第一個元素
myDeque.erase(it); ///< 刪除當前指向的元素

(4)遍歷所有元素

for (auto it = myDeque.begin(); it != myDeque.end(); ++it) {
    std::cout << *it << std::endl;
}

4. 例程

#include <iostream>
#include <deque>
int main() {
    std::deque<int> numbers;
    /** 插入元素 */
    numbers.push_back(5);
    numbers.push_back(10);
    numbers.push_front(3);
    /** 遍歷并打印元素 */
    std::cout << "Deque before modification: ";
    for (int num : numbers) {
        std::cout << num << " ";
    }
    std::cout << std::endl;
    /** 在中間插入元素 */
    numbers.insert(numbers.begin() + 1, 7);
    /** 刪除開頭元素 */
    numbers.pop_front();
    /** 再次遍歷并打印元素 */
    std::cout << "Deque after modification: ";
    for (int num : numbers) {
        std::cout << num << " ";
    }
    std::cout << std::endl;
    return 0;
}

到此這篇關于C++中std::deque的使用的文章就介紹到這了,更多相關C++ std::deque內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • C++中static和const的作用和用法

    C++中static和const的作用和用法

    在C++中,"static"和"const"都是用于修飾變量的關鍵字,它們具有不同的作用,本文通過代碼示例給大家詳細的介紹static和const的作用和用法,,需要的朋友可以參考下
    2023-06-06
  • C++實現將內容寫入文件的方法總結

    C++實現將內容寫入文件的方法總結

    本文主要總結了一下C/C++將內容寫入文件的方法,C的方法有些單調,畢竟沒有庫函數。C++則豐富些,下面我把搜集到的整理一下,供大家參考
    2023-04-04
  • 實例解析C++設計模式編程中簡單工廠模式的采用

    實例解析C++設計模式編程中簡單工廠模式的采用

    這篇文章主要介紹了C++設計模式編程中簡單工廠模式的采用實例,在簡單工廠模式中程序往往利用封裝繼承來降低耦合度,需要的朋友可以參考下
    2016-03-03
  • 詳解C語言中strpbrk()函數的用法

    詳解C語言中strpbrk()函數的用法

    這篇文章主要介紹了詳解C語言中strpbrk()函數的用法,是C語言入門學習中的基礎知識,需要的朋友可以參考下
    2015-08-08
  • C語言Static?關鍵字解析

    C語言Static?關鍵字解析

    這篇文章主要介紹了C語言Static?關鍵字解析,C語言中staic關鍵字很簡單,簡單到你的任何一個項目中可以不寫一個staic關鍵字也是沒有問題的。寫這篇章主要是一下自己的staic的理解和應用,當然在章開頭依舊要照本宣科簡述一下static關鍵字,需要的朋友可以參考一下
    2022-02-02
  • C語言大小端模式、判斷大小端、大小端轉換方法詳解

    C語言大小端模式、判斷大小端、大小端轉換方法詳解

    這篇文章主要介紹了C語言大小端模式、判斷大小端、大小端轉換的相關資料,大端和小端是數據在內存中的存儲方式,大端模式下高字節(jié)存于低地址,小端模式則相反,大小端問題由數據類型多字節(jié)存儲引起,不同選擇形成不同存儲模式,需要的朋友可以參考下
    2024-10-10
  • C++實現坦克大戰(zhàn)小游戲EGE圖形界面

    C++實現坦克大戰(zhàn)小游戲EGE圖形界面

    這篇文章主要為大家詳細介紹了C++實現坦克大戰(zhàn)小游戲EGE圖形界面,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 堆基本操作實現最大堆

    堆基本操作實現最大堆

    這篇文章主要介紹了堆基本操作實現最大堆,需要的朋友可以參考下
    2014-02-02
  • c語言壓縮文件詳細講解

    c語言壓縮文件詳細講解

    這篇文章主要從單文件壓縮、多文件壓縮、多文件異步壓縮講訴了c語言壓縮文件,需要的朋友可以參考下面具體的文章內容
    2021-09-09
  • C++中::SHCreateDirectoryEx函數使用方法

    C++中::SHCreateDirectoryEx函數使用方法

    ::SHCreateDirectoryEx用于創(chuàng)建多級目錄,類似于mkdir -p命令,本文主要介紹了C++中::SHCreateDirectoryEx函數使用方法,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03

最新評論