题解 | #【模板】栈#

【模板】栈

http://www.nowcoder.com/practice/104ce248c2f04cfb986b92d0548cccbf

类模拟栈

/* 实现一个stack类 */


#include <bits/stdc++.h>

using namespace std;

class My_stack{
private:
    vector<int> s; //数组模拟栈
    int pos = -1;	// -1表示栈空
    
public:
    My_stack(int size) {
        s.resize(size);
    }
    
    My_stack() {
    }
      
    void push(int x){
        s[++pos] = x;
    }
    
    void top (){
        if(pos == -1) {
            cout << "error" << endl;
        }
        else {
            cout << s[pos] << endl;
        }
    }
    
    void pop() {
        if(pos == -1) {
            cout << "error" << endl;
        }
        else {
            cout << s[pos--] << endl;
        }
    }  
   
};


int main(){
    My_stack * st = new My_stack(100005);
    int n, x, top = -1;
    string s;
    cin >> n;
    while(n--){
        cin >> s;
        if(s == "push"){
            cin >> x;
            st->push(x);
        }
        else if(s == "pop"){
           st->pop();
        }
        else if(s == "top"){
          st->top();
        }
    }
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
12-04 04:26
小红书 内容风控工程 (n+3) * 16 硕士985
点赞 评论 收藏
分享
LZStarV:冲就好了,就算真的是字节也冲,面评脏了大不了等三四个月就淡了,而且等到那个时候实力进步了选择还多,何必拘泥于字节
点赞 评论 收藏
分享
11-03 12:40
中山大学 Java
勇敢的突尼斯海怪选钝...:楼主这拒意向话术好得体呀 !求问HR回复态度咋样呀
点赞 评论 收藏
分享
评论
7
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务