Stack是一种先进后出的数据结构,它只有一个出口。
至于顶端的元素可以被外界使用,因此栈不允许有遍历行为。但是可以判断栈是否为空,可以返回栈的元素个数。
栈中进入数据称为入栈,输出数据称为出栈。
1、stack常用接口
Stack<T> stk; | Stack对象的默认构造 |
Stack(const stack& stk); | 拷贝构造函数 |
Stack& operator=(const stack& stk) | 等号操作符重载 |
Push(elem); | 入栈 |
Pop(); | 从栈顶移除一个元素 |
Top(); | 返回栈顶元素 |
Empty(); | 判断堆栈是否为空 |
Size(); | 返回栈的大小 |
#include<stack>
#include<iostream>
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();
}