本文根據CCF NOI 競賽大綱 的順序編寫。數據結構
棧是一種先進後出的數據結構。使用 STL 的 stack 數據結構須要如下頭文件:函數
#include <stack>
如下是 stack 經常使用函數(用例中棧名爲 \(s\)):spa
函數 | 語法 | 用例 | 做用 | 類型 |
---|---|---|---|---|
push() |
棧名.push(元素) |
s.push(a) |
在棧頂插入新元素 | 操做 |
pop() |
棧名.pop() |
s.pop() |
彈出棧頂元素 | 操做 |
top() |
棧名.top() |
a = s.top() |
訪問棧頂元素 | 查詢 |
size() |
棧名.size() |
len = s.size() |
查詢棧中元素數量 | 查詢 |
empty() |
棧名.empty() |
f = s.empty() |
查詢棧是否爲空 | 查詢 |
隊列是一種先進出的數據結構。使用 STL 的 queue 數據結構須要如下頭文件:code
#include <queue>
如下是 queue 經常使用函數(用例中隊列名爲 \(q\)):隊列
函數 | 語法 | 用例 | 做用 | 類型 |
---|---|---|---|---|
push() |
隊列名.push(元素) |
q.push(a) |
在隊列末端插入新元素 | 操做 |
pop() |
隊列名.pop() |
q.pop() |
彈出隊列頭端元素 | 操做 |
front() |
隊列名.front() |
a = q.front() |
訪問隊頭元素 | 查詢 |
back() |
隊列名.back() |
a = q.back() |
訪問隊尾元素 | 查詢 |
size() |
隊列名.size() |
len = q.size() |
查詢隊列中元素數量 | 查詢 |
empty() |
隊列名.empty() |
f = q.empty() |
查詢隊列是否爲空 | 查詢 |
鏈表是一種數據結構。使用 STL 的 list 數據結構須要如下頭文件:get
#include <list>
如下是 list 經常使用函數(用例中隊列名爲 \(l\)):table
未完待更……class