栈(stack):后进先出(Last In First Out)的一种数据结构。
stack::push:在栈顶放入一组数据。
stack::pop:在栈顶取出一组数据。
stack::top:访问最顶端数据。
上一篇讲述的递归函数,其调用就是通过栈来实现的。
#include<stack>
#include<cstdio>
using namespace std;
int main()
{
stack<int> s;
printf("empty:%d\n",s.empty());
s.push(1);
printf("%d\n",s.top());
s.push(2);
printf("%d\n",s.top());
s.push(3);
printf("empty:%d\n",s.empty());
printf("size:%d\n",s.size());
printf("%d\n",s.top());
s.pop();
printf("%d\n",s.top());
s.pop();
printf("%d\n",s.top());
s.pop();
return 0;
}
常用操作:
s.empty():栈空返回1,否则返回0。
s.size():返回栈的数据个数。
s.push():进栈。
s.pop():出栈。
s.top():访问栈顶数据。