[자료구조] 스택(Stack)

지온·2023년 11월 14일

자료구조

목록 보기
1/1

스택 노트 정리

스택 구현(Java)

class MyStack {
    int[] arr;
    int top = -1;

    MyStack(int size) {
        arr = new int[size];
    }

    public boolean isEmpty() {
        return (top == -1);
    }

    public boolean isFull() {
        return (this.top == this.arr.length - 1);
    }

    public void push(int item) {
        if (isFull()) {
            System.out.println("Stack is full.");
            return;
        }
        arr[++top] = item;
    }

    public Integer pop() {
        if (isEmpty()) {
            System.out.println("Stack is empty.");
            return null;
        }
        int result = arr[top--];
        return result;
    }

    public Integer peek() {
        if (isEmpty()) {
        	System.out.println("Stack is empty.");
            return null;
        }

        return arr[top];
    }

    public int length() {
        return this.top + 1;
    }

    public void print() {
        for (int i = 0; i <= this.top; i++) {
            System.out.print(arr[i] + " ");
        }
        System.out.println();
    }
}

0개의 댓글