程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> STL--雙端隊列(deque)和鏈表(list)

STL--雙端隊列(deque)和鏈表(list)

編輯:C++入門知識

雙端隊列(deque容器類):

#include<deque>與vector 類似,支持隨機訪問和快速插入刪除,它在容器中某一位置上的操作所花費的是線性時間。 與vector不同的是:deque 還支持從開始端插入數據:push_front() 。 此外deque 不支持與vector 的capacity() 、reserve() 類似的操作。 deque,是“double-ended queue”的縮寫。可以隨機存取元素(用索引直接存取)。 數組頭部和尾部添加或移除元素都非常快速,但是在中部安插元素比較費時。 頭文件  #include <deque> 定義變量  deque<int> mydeq; 主要成員函數 mydeq.clear()  移除容器中所有數據。 mydeq.push_front(elem)  在隊列首部加入一個數據 mydeq.pop_front()  刪除隊列尾部數據 mydeq.push_back(elem)  在隊列尾部加入一個數據 mydeq.pop_back()  刪除隊列尾部數據 mydeq.empty()  判斷隊列是否為空,為空返回true mydeq.size()          返回容器中實際數據的個數。 mydeq.erase(pos)       刪除pos位置的數據,返回下一個數據的位置。 mydeq.insert(pos,cnt,elem)  在pos位置插入cnt個數據elem。 mydeq.begin()     返回的指針指向數組中的第一個數據。 mydeq.end()        實際上是取末尾加一,以便讓循環正確運行--它返回的指針指向最靠近數組界限的數據。 operator[]                返回容器中指定位置的一個引用   deque舉例: View Code

 鏈表(list容器類):

#include<list>,是一種雙線性列表,只能順序訪問(從前向後或者從後向前)。 list 的數據組織形式  

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved