c deque 雙端佇列

2021-09-06 22:20:22 字數 1474 閱讀 9908

雙端佇列:
函式

描述c.assign(beg,end)

c.assign(n,elem) 

將[beg; end)區間中的資料賦值給c。

將n個elem的拷貝賦值給c。

c.at(idx) 

傳回索引idx所指的資料,如果idx越界,丟擲out_of_range。

c.back() 

傳回最後乙個資料,不檢查這個資料是否存在。

c.begin() 

傳回迭代器重的可乙個資料。

c.clear() 

移除容器中所有資料。

dequec

dequec1(c2)

dequec(n)

dequec(n, elem)

dequec(beg,end)

c.~deque() 

建立乙個空的deque。

複製乙個deque。

建立乙個deque,含有n個資料,資料均已預設構造產生。

建立乙個含有n個elem拷貝的deque。

建立乙個以[beg;end)區間的deque。

銷毀所有資料,釋放記憶體。

c.empty() 

判斷容器是否為空。

c.end() 

指向迭代器中的最後乙個資料位址。

c.erase(pos)

c.erase(beg,end) 

刪除pos位置的資料,傳回下乙個資料的位置。

刪除[beg,end)區間的資料,傳回下乙個資料的位置。

c.front() 

傳回地乙個資料。

get_allocator 

使用建構函式返回乙個拷貝。

c.insert(pos,elem) 

c.insert(pos,n,elem)

c.insert(pos,beg,end)

在pos位置插入乙個elem拷貝,傳回新資料位置。

在pos位置插入》n個elem資料。無返回值。

在pos位置插入在[beg,end)區間的資料。無返回值。

c.max_size() 

返回容器中最大資料的數量。

c.pop_back() 

刪除最後乙個資料。

c.pop_front() 

刪除頭部資料。

c.push_back(elem) 

在尾部加入乙個資料。

c.push_front(elem) 

在頭部插入乙個資料。

c.rbegin() 

傳回乙個逆向佇列的第乙個資料。

c.rend() 

傳回乙個逆向佇列的最後乙個資料的下乙個位置。

c.resize(num) 

重新指定佇列的長度。

c.size() 

返回容器中實際資料的個數。

c1.swap(c2) 

swap(c1,c2)

將c1和c2元素互換。

同上操作。

C Deque 雙向佇列

c deque 雙向佇列 是一種優化了的 對序列兩端元素進行新增和刪除操作的基本序列容器。它允許較為快速地隨機訪問,但它不像 vector 把所有的物件儲存在一塊連續的記憶體塊,而是採用多個連續的儲存塊,並且在乙個對映結構中儲存對這些塊及其順序的跟蹤。向 deque 兩端新增或刪除元素的開銷很小。它...

佇列 雙端佇列

1.佇列 佇列是遵循先進先出 fifo,也稱為先來先服務 原則的一組有序的項。佇列在尾部新增新 元素,並從頂部移除元素。最新新增的元素必須排在佇列的末尾 class queue 向佇列新增元素 enqueue element 檢查佇列是否為空並獲取它的長度 isempty 從佇列移除元素 deque...

雙端佇列 Acwing 134 雙端佇列

達達現在碰到了乙個棘手的問題,有n個整數需要排序。達達手頭能用的工具就是若干個雙端佇列。她從1到n需要依次處理這n個數,對於每個數,達達能做以下兩件事 1 新建乙個雙端佇列,並將當前數作為這個佇列中的唯一的數 2 將當前數放入已有的佇列的頭之前或者尾之後。對所有的數處理完成之後,達達將這些佇列按一定...