C++ STL 数据结构模板的运用
Posted 淼畔 的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ STL 数据结构模板的运用相关的知识,希望对你有一定的参考价值。
本文根据CCF NOI 竞赛大纲 的顺序编写。
栈(stack)
栈是一种先进后出的数据结构。使用 STL 的 stack 数据结构需要以下头文件:
#include <stack>
以下是 stack 常用函数(用例中栈名为 \\(s\\)):
函数 | 语法 | 用例 | 作用 | 类型 |
---|---|---|---|---|
push() |
栈名.push(元素) |
s.push(a) |
在栈顶插入新元素 | 操作 |
pop() |
栈名.pop() |
s.pop() |
弹出栈顶元素 | 操作 |
top() |
栈名.top() |
a = s.top() |
访问栈顶元素 | 查询 |
size() |
栈名.size() |
len = s.size() |
查询栈中元素数量 | 查询 |
empty() |
栈名.empty() |
f = s.empty() |
查询栈是否为空 | 查询 |
队列(queue)
队列是一种先进出的数据结构。使用 STL 的 queue 数据结构需要以下头文件:
#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() |
查询队列是否为空 | 查询 |
链表(list)
链表是一种数据结构。使用 STL 的 list 数据结构需要以下头文件:
#include <list>
以下是 list 常用函数(用例中队列名为 \\(l\\)):
未完待更……
以上是关于C++ STL 数据结构模板的运用的主要内容,如果未能解决你的问题,请参考以下文章