欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++中std::deque的使用

 更新時(shí)間:2024年03月28日 09:05:27   作者:賽先生.AI  
std::deque是C++標(biāo)準(zhǔn)庫(kù)中的一個(gè)雙端隊(duì)列容器,本文主要介紹了C++中std::deque的使用,具有一定的參考價(jià)值,感興趣的可以了解一下

1. std::deque

std::deque 是 C++ 標(biāo)準(zhǔn)庫(kù)中的一個(gè)雙端隊(duì)列容器。這個(gè)容器支持在序列的兩端進(jìn)行快速的插入和刪除操作,其時(shí)間復(fù)雜度為常數(shù)時(shí)間 O(1)。同時(shí),std::deque 也提供了對(duì)序列中任意元素的隨機(jī)訪問(wèn)。

2. 特點(diǎn)

(1)雙端操作:在序列的開(kāi)始和結(jié)束都可以進(jìn)行元素的插入和刪除操作。

(2)隨機(jī)訪問(wèn):可以使用下標(biāo)操作符 [] 或 at() 方法來(lái)訪問(wèn)隊(duì)列中的任意元素。

(3)動(dòng)態(tài)大小:std::deque 可以根據(jù)需要?jiǎng)討B(tài)地增長(zhǎng)或縮小。

3. 基本用法

(1)聲明std::deque

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

(2)插入元素

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

(3)刪除元素

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

(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);
    /** 刪除開(kāi)頭元素 */
    numbers.pop_front();
    /** 再次遍歷并打印元素 */
    std::cout << "Deque after modification: ";
    for (int num : numbers) {
        std::cout << num << " ";
    }
    std::cout << std::endl;
    return 0;
}

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

相關(guān)文章

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

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

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

    C++實(shí)現(xiàn)將內(nèi)容寫(xiě)入文件的方法總結(jié)

    本文主要總結(jié)了一下C/C++將內(nèi)容寫(xiě)入文件的方法,C的方法有些單調(diào),畢竟沒(méi)有庫(kù)函數(shù)。C++則豐富些,下面我把搜集到的整理一下,供大家參考
    2023-04-04
  • 實(shí)例解析C++設(shè)計(jì)模式編程中簡(jiǎn)單工廠模式的采用

    實(shí)例解析C++設(shè)計(jì)模式編程中簡(jiǎn)單工廠模式的采用

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

    詳解C語(yǔ)言中strpbrk()函數(shù)的用法

    這篇文章主要介紹了詳解C語(yǔ)言中strpbrk()函數(shù)的用法,是C語(yǔ)言入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-08-08
  • C語(yǔ)言Static?關(guān)鍵字解析

    C語(yǔ)言Static?關(guān)鍵字解析

    這篇文章主要介紹了C語(yǔ)言Static?關(guān)鍵字解析,C語(yǔ)言中staic關(guān)鍵字很簡(jiǎn)單,簡(jiǎn)單到你的任何一個(gè)項(xiàng)目中可以不寫(xiě)一個(gè)staic關(guān)鍵字也是沒(méi)有問(wèn)題的。寫(xiě)這篇章主要是一下自己的staic的理解和應(yīng)用,當(dāng)然在章開(kāi)頭依舊要照本宣科簡(jiǎn)述一下static關(guān)鍵字,需要的朋友可以參考一下
    2022-02-02
  • C語(yǔ)言大小端模式、判斷大小端、大小端轉(zhuǎn)換方法詳解

    C語(yǔ)言大小端模式、判斷大小端、大小端轉(zhuǎn)換方法詳解

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

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

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

    堆基本操作實(shí)現(xiàn)最大堆

    這篇文章主要介紹了堆基本操作實(shí)現(xiàn)最大堆,需要的朋友可以參考下
    2014-02-02
  • c語(yǔ)言壓縮文件詳細(xì)講解

    c語(yǔ)言壓縮文件詳細(xì)講解

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

    C++中::SHCreateDirectoryEx函數(shù)使用方法

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

最新評(píng)論