stack基本概念
概念:stack是一种先进后出(First In Last Out)的数据结构,它只有一个出口
栈中只有顶端的元素才能被外界使用,因此栈不允许有遍历行为
栈可以判断容器是否为空吗?可以empty
栈可以返回其元素个数吗?可以 size,因为在入栈的时候我们可以对其进行计数
stack常用接口
功能描述:栈容器常用的对外接口
构造函数:
stack<T> stk;
stack(const stack &stk);//拷贝构造函数
赋值操作
stack& operator=(const stack &stk); //重载等号操作符
数据存取
push(elem); //向栈顶添加元素
pop();//从栈顶移除第一个元素
top();//返回栈顶元素
大小操作
empty();//判断堆栈是否为空
size();//返回栈的大小
#include <iostream>
#include <stack>
using namespace std;
void test01()
{
//特点:先进后出
stack<int> s;
//入栈
s.push(10);
s.push(20);
s.push(30);
s.push(40);
//只要栈不为空,查看栈顶,并且执行出栈操作
while(!s.empty())
{
//查看栈顶的元素
cout<<"栈顶的元素为: "<<s.top()<<endl;
s.pop();
}
cout<<"栈的大小: "<<s.size()<<endl;
}
int main()
{
test01();
}