【CPP】雙端隊列簡介(deque)

簡介:雙端隊列(deque)

目錄

  • 1.概述
  • 2.特點
  • 3.底層原理

1.概述

雙端隊列:是一種順序表和順序表的結合數據結構,不是隊列。
它提供順序表的[]下標訪問和鏈表的中間頭部的較高效率插入刪除操作。
在這里插入圖片描述

2.特點

順序表的優缺點:
優點:支持下標隨機訪問
缺點:頭部或者中間插入刪除效率低 + 擴容有消耗
在這里插入圖片描述

鏈表的優缺點:
優點:任意位置插入刪除效率都不錯
缺點:不支持下表隨機訪問
在這里插入圖片描述

雙端隊列優缺點:順序表鏈表都沾點邊,但都不夠極致。
優點:

  • 既有著順序表支持下表隨機訪問的功能,又有鏈表任意位置插入刪除效率都還可以。
  • 而且頭插尾插效率很好。

缺點:

  • 雙端隊列支持的下標隨機訪問性能上不如順序表,雙端隊列的任意位置插入刪除效率不如鏈表

3.底層原理

簡化抽象圖:
在這里插入圖片描述
迭代器圖:
在這里插入圖片描述

因為deque優點是頭尾插入刪除效率很好,剛好與棧和隊列相一致,因而常被用做棧和隊列的默認容器。


EOF

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/20342.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/20342.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/20342.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux之docker- image.tar 的導出和導入

一、情況 docker 鏡像有時無法從外網訪問,需要把docker 打包導出到本地,然后以文件的形式,發送給其他人,再然后其他人把docker 鏡像文件導入到自己的服務器本地鏡像倉庫,方可使用。也可把鏡像上傳到公司內網。下面就開…

ython 2.7 環境配置:深度探索與高效實踐

Python 2.7 環境配置:深度探索與高效實踐 在數字化時代的浪潮中,Python作為一種強大而靈活的編程語言,深受開發者們的喜愛。盡管Python 3版本已逐漸成為主流,但Python 2.7依然在某些特定領域和場景中發揮著不可替代的作用。本文將…

Verilog HDL基礎知識(二)

引言:本文繼續介紹Verilog HDL基礎知識,重點介紹賦值語句、阻塞與非阻塞、循環語句、同步與異步、函數與任務語法知識。 1. 賦值語句 在Verilog中,有兩種進行賦值的方法,即連續賦值語句和過程賦值語句(塊&#xff09…

Java數據結構-二叉搜索樹

目錄 1. 概念2. 二叉搜索樹的操作2.1 查找2.2 插入2.3 刪除 3. 全部代碼 1. 概念 二叉搜索樹是特殊的二叉樹,也叫二叉排序樹,它的特點是:每個結點的左子樹上的所有結點的值都小于這個結點的值,右子樹上的所有結點的值都大于這個結點的值,另外所有的左子樹和右子樹也分別為二叉…

詳解 Spark 編程之 RDD 依賴關系

一、依賴與血緣關系 依賴:兩個相鄰 RDD 之間的關系血緣關系:多個連續的 RDD 的依賴由于 RDD 不會保存數據,為了提高容錯性,每個 RDD 都會保存自己的血緣關系,一旦某個轉換過程出現錯誤,可以根據血緣關系重新…

JavaScript實現粒子數字倒計時效果附完整注釋

<!DOCTYPE html> <html lang="en"><head><meta charset

隨身wifi網絡卡頓怎么解決?隨身WiFi哪個牌子的最好用?排名第一名的隨身WiFi!

對于隨身wifi靠不靠譜這個問題&#xff0c;網上一直存在爭議。很多人的隨身wifi網速不穩定&#xff0c;信號看著滿格就是上不了網。關于隨身wifi卡頓到底該怎么解決呢&#xff1f; 1.如果是設備網絡在一個地方上網速度很快&#xff0c;換一個地方網絡就不行了&#xff0c;很可能…

股票買賣II

股票買賣II 時間限制&#xff1a;1秒 內存限制&#xff1a;128M 題目描述 給定一個長度為N的數組&#xff0c;數組中的第i個數字表示一個給定股票在第i天的價格。 設計一個算法來計算你所能獲取的最大利潤。你可以盡可能地完成更多的交易&#xff08;多次買賣一支股票…

解析Java中1000個常用類:Readable類,你學會了嗎?

在 Java 編程中,處理輸入流是一個常見的需求。Java 提供了多種方式來處理輸入流,例如 InputStream、Reader 等類和接口。 而 Readable 接口是 Java 提供的一個簡單而強大的接口,用于表示可讀的字符序列。 本文將詳細介紹 Readable 接口的用途、實現原理、應用場景,并通過…

Linux學習筆記(清晰且清爽)

本文首次發布于個人博客 想要獲得最佳的閱讀體驗&#xff08;無廣告且清爽&#xff09;&#xff0c;請訪問本篇筆記 Linux安裝 關于安裝這里就不過多介紹了&#xff0c;安裝版本是CentOS 7&#xff0c;詳情安裝步驟見下述博客在VMware中安裝CentOS7&#xff08;超詳細的圖文教…

QT之全局忽略編譯警告QMAKE_CXXFLAGS

全局忽略編譯警告QMAKE_CXXFLAGS 這個是Qt中用來給編譯器傳遞開關的&#xff0c;常寫在’pro’文件或’pri’文件中。 將所有的警告當成錯誤處理 QMAKE_CXXFLAGS -Werror return-type //函數有返回值 QMAKE_CXXFLAGS -Werror return-local-addr //返回局部變量地址 QMAKE…

Dubbo架構概覽:服務注冊與發現、遠程調用、監控與管理

Dubbo 是一個成熟的、高性能的、基于 Java 的微服務開發框架&#xff0c;它主要用于解決分布式系統中的服務治理問題&#xff0c;包括服務的注冊與發現、遠程過程調用&#xff08;RPC&#xff09;、服務監控與管理等多個關鍵環節。以下是Dubbo架構概覽的詳細介紹&#xff1a; …

3種使用OpenCV進行圖像合成的技巧

準備好探索圖像世界的魔法了嗎&#xff1f;今天&#xff0c;我們將用Python和OpenCV庫&#xff0c;一起解鎖三種超炫的圖像合成技巧&#xff0c;讓你的照片變得與眾不同&#xff01;&#x1f308; 1. 圖像融合&#xff1a;讓風景與夢境交織 想象一下&#xff0c;把日出的輝煌…

【前端每日基礎】day33——響應式布局

響應式布局是一種網頁設計的方法&#xff0c;它可以使網站在不同的設備上&#xff08;如桌面電腦、平板電腦、手機等&#xff09;以及不同的屏幕尺寸上呈現出最佳的顯示效果。響應式布局的目標是使用戶在任何設備上都能夠方便地訪問和瀏覽網站&#xff0c;而不需要使用不同版本…

ios v品會 api-sign算法

vip品會 api-sign算法還原 ios入門案例 視頻系列 IOS逆向合集-前言嗶哩嗶哩bilibili 一、ios難度與安卓對比 這里直接復制 楊如畫大佬的文章的內容&#xff1a; ios難度與安卓對比 很多人說ios逆向比安卓簡單&#xff0c;有以下幾個原因 1 首先就是閉源&#xff0c;安卓開源…

PH編程入門:從基礎到實踐的全方位解析

PH編程入門&#xff1a;從基礎到實踐的全方位解析 PH編程&#xff0c;作為一種獨特而強大的編程語言&#xff0c;正逐漸在各個領域展現其巨大的潛力。對于初學者來說&#xff0c;如何快速入門并掌握PH編程的精髓&#xff0c;是一個既充滿挑戰又充滿機遇的過程。本文將從四個方…

vscode過濾器@modified(查看配置了哪些設置)

文檔 visualstudio?docs?getstarted?settingshttps://code.visualstudio.com/docs/getstarted/settings 說明 使用modified可以過濾出&#xff1a; 配置過的設置&#xff08;和默認值不同&#xff09;&#xff1b; 在 settings.json 文件中配置了值的設置 步驟 1.打開…

Ubuntu Linux 24.04 使用certbot生成ssl證書

設置域名 1. 將需要生成SSL證書的域名解析到IP地址 idealand.xyz <> 64.176.82.190 檢查防火墻的設置 1. 首先查看防火墻的狀態&#xff1a; # ufw status 2. 如果防火墻開啟了&#xff0c;要開放80和443端口用于certbot驗證 # ufw allow 80 # ufw allow 443 生…

Vue3實戰筆記(53)—奇怪+1,VUE3實戰模擬股票大盤工作臺

文章目錄 前言一、實戰模擬股票大盤工作臺二、使用步驟總結 前言 實戰模擬股票大盤工作臺 一、實戰模擬股票大盤工作臺 接上文&#xff0c;這兩天封裝好的組件直接應用,上源碼&#xff1a; <template><div class"smart_house pb-5"><v-row ><…

JS對象由淺入深

對象 對象&#xff08;Object&#xff09;&#xff1a;JavaScript里的一種數據類型&#xff08;引用類型&#xff09;&#xff0c;也是用于存儲數據的 好處&#xff1a;可以用來詳細的描述某個事物&#xff0c;是用鍵值對形式存儲語義更明了 特點&#xff1a;對象數據是無序的&…