c++中栈与队列有直接的库函数,相对c语言来说,这是非常方便的,可以直接引用。
一、栈
栈(Stack)是一种线性存储结构,栈中的数据元素遵守“先进后出"的原则。
使用标准库的栈时, 应包含相关头文件:
#include <stack>
定义:
stack <int> s;
相关操作如下:
s.empty(); //如果栈为空则返回true, 否则返回false;
s.size(); //返回栈中元素的个数
s.top(); //返回栈顶元素, 但不删除该元素
s.pop(); //弹出栈顶元素, 但不返回其值
s.push(); //将元素压入栈顶
二、队列
队列(Queue)与栈一样,是一种线性存储结构,队列中的数据元素遵循“先进先出”的原则。
使用标准库的队列时, 应包含相关头文件:
#include <queue>
定义:
queue <int> q;
相关操作:
q.empty() //如果队列为空返回true,否则返回false
q.size() //返回队列中元素的个数
q.pop() //删除队列首元素但不返回其值
q.front() //返回队首元素的值,但不删除该元素
q.push() //在队尾压入新元素
q.back() //返回队列尾元素的值,但不删除该元素