Queue與Deque 佇列與雙端佇列

2021-09-12 23:01:53 字數 1096 閱讀 4162

//如果佇列沒有滿,將給定的元素新增到這個佇列尾部並返回true。如果佇列滿了,將丟擲illegalstateexception

boolean add(e element)

//如果佇列沒有滿,將給定的元素新增到這個佇列尾部並返回true。如果佇列滿了,將返回false

boolean offer(e element)

//如果佇列不空,刪除並返回這個佇列頭部的元素。如果佇列是空,將丟擲nosuchelementexception

e remove()

//如果佇列不空,刪除並返回這個佇列頭部的元素。如果佇列是空,返回null

e poll()

//如果佇列不空,返回這個佇列頭部元素,但不刪除。如果隊列為空,將丟擲nosuchelementexception

e element()

//如果佇列不空,返回這個佇列頭部元素,但不刪除。如果隊列為空,返回null

e peek()

void addfirst(e element)

void addlast(e element)

boolean offerfirst(e element)

boolean offerlast(e element)

//將給定的物件新增到雙端佇列的頭部或尾部。如果滿了,前面兩個方法將丟擲illegalstateexception,而後面兩個方法返回false。

e removefirst()

e removelast()

e pollfirst()

e polllast()

//如果佇列不空,刪除並返回佇列頭部(尾部)的元素。

//如果隊列為空,前面兩個方法將丟擲乙個nosuchelementexception,而後面兩個方法返回null。

e getfirst()

e getlast()

e peekfirst()

e peeklast()

//如果佇列非空,返回佇列頭部的元素,但不刪除。

//如果隊列為空,前面兩個方法將丟擲乙個nosuchelementexception,而後面兩個方法返回null

queue與deque詳解及用法

使用佇列時,標頭檔案 include include using namespace std 定義佇列 queuec c.empty 判斷佇列是否為空,隊列為空時,返回為真,否則為假 c.size 返回佇列中資料的個數 c.pop 刪除佇列首元素但不返回其值 c.front 返回佇列頭部資料,不刪除...

雙端佇列(deque)

區別於資料結構的雙端佇列,這裡的是stl的!雙端佇列 deque容器類 include與vector 類似,支援隨機訪問和快速插入刪除,它在容器中某一位置上的操作所花費的是線性時間。與 vector不同的是,deque還支援從開始端插入資料 push front 此外deque 不支援與vector...

雙端佇列deque

雙端佇列deque容器是一種優化了的 在序列兩端對元素進行新增和刪除操作的基本序列容器。它也允許適度快速地進行隨機訪問 就像vector一樣,它也有乙個operator操作符,然而,它沒有vector的那種把所有的東西都儲存在一塊連續的記憶體塊中的約束。deque的典型實現是利用多個連續的儲存塊 同...