用STL实现栈

栈(statck)这种数据结构在计算机中是相当出名的。栈中的数据是先进后出的(First In Last Out, FILO)。
栈只有一个出口,允许新增元素(只能在栈顶上增加)、移出元素(只能移出栈顶元素)、取得栈顶元素等操作。
在STL中,栈是以别的容器作为底部结构,再将接口改变,使之符合栈的特性就可以了。因此实现非常的方便。
下面就给出栈的函数列表和VS2008中栈的源代码,在STL中栈一共就5个常用操作函数(top()、push()、pop()、 size()、empty() ),很好记的。

栈相当于一个上端开口的桶,注意输出顺序和输入顺序相反



#include <iostream>
#include <stack>
#include <cstdio>
using namespace std;
stack<int>s;
int main(){
    int n,m;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>m; s.push(m);
    }
    int num=s.size();
    for(int i=0;i<num;i++){
        int k=s.top();
        cout<<k<<" ";
        s.pop();
    }
}

 

posted @ 2017-10-13 21:11  TimDucan  阅读(929)  评论(0编辑  收藏  举报