概述
栈和队列是两个特殊的线性表,栈的特性是后进先出,队列的特性是先进先出,二者在STL中都已经实现了,如果需要使用他们的话需要分别加上头文件。
#include<stack>
#include<queue>
using std::stack;
using std::queue;
栈和队列的定义和初始化
与Vector不同,栈和队列定义时默认初始化,不能提供初始值。
stack<int> st;
queue<char>que;
//stack和queue 表示容器类型,int和char表示存储的元素类型,st和que表示定义的容器的名字。
栈和队列的基本操作
栈的基本操作
st.empty()//检查栈是否为空,返回值bool类型
st.size()//返回栈中元素个数,int类型
st.pop()//把栈顶元素弹出,无返回值
x = st.top()//返回栈顶元素
s.push(x);//将x压入栈顶。
队列的基本操作
que.empty();//检查队列是否为空,bool类型
que.size();//返回队列中元素个数,int类型
que.pop();//删除队首元素,无返回值
que.front();//返回对手元素
que.push(x);//将x压入队尾,无返回值
que.back();//返回队尾元素

本文介绍了C++ STL中的栈和队列。栈遵循后进先出(LIFO)原则,而队列则遵循先进先出(FIFO)原则。在STL中,栈和队列都是预定义的容器适配器,无需初始化即可使用。文章详细讨论了它们的基本操作。
2245

被折叠的 条评论
为什么被折叠?



