본문 바로가기
Data Structure

[Data Structure] Stack

by Saerong2 2020. 10. 24.

소스코드

#include <cstdio>

template<class T> class Stack {
public:
    int t;
    T* value;

    Stack() {
        t = -1;
        value = new T[100];
    }

    ~Stack() {
        delete[] value;
    }

    void push(T val) {
        value[++t] = val;
    }
    
    void pop() {
        if (t >= 0)
            t--;
        else {
            puts("stack is empty()");
        }
    }

    T top() {
        if (t != -1)
            return value[t];
        else
            return -1;
    }
};

int main()
{
    Stack <int> s;
    s.push(1);
    s.push(2);
    s.push(3);
    printf("%d\n", s.top()); s.pop();
    printf("%d\n", s.top()); s.pop();
    printf("%d\n", s.top()); s.pop();
    printf("%d\n", s.top()); s.pop();
}

 

 

 

 

 

공부한 것을 정리하기 위한 기록입니다.

틀린 부분이 있다면 부드럽게 알려주세요.

'Data Structure' 카테고리의 다른 글

[Data Structure] Queue  (0) 2020.10.24

댓글