StackArray
2025. 4. 9. 23:04
public class StackArray {
    private int[] stack;
    private int top;
    
    public StackArray(int size) {
        stack = new int[size];
        top = -1;
    }
    
    public void push(int value) {
        if (top == stack.length - 1) {
            System.out.println("스택 오버플로우!");
            return;
        }
        stack[++top] = value;
    }
    
    public int pop() {
        if (top == -1) {
            System.out.println("스택 언더플로우!");
            return -1;
        }
        return stack[top--];
    }
    
    public int peek() {
        if (top == -1) return -1;
        return stack[top];
    }
    
    public boolean isEmpty() {
        return top == -1;
    }
    
    public int size() {
        return top + 1;
    }
    
    public static void main(String[] args) {
        StackArray stack = new StackArray(5); //스택의 용량 설정
        
        //데이터 입력
        stack.push(10);
        stack.push(20);
        
        //단순 마지막 입력 데이터 조회
        System.out.println("Peek: " + stack.peek());
        
      //마지막 입력 데이터 조회 및 삭제
        System.out.println("Pop: " + stack.pop());
    }
}

'코딩테스트' 카테고리의 다른 글

백준 - 10828번 스택(Stack)  (1) 2025.04.09
백준-9012 괄호  (0) 2025.04.09
백준 - 2493번 탑  (0) 2025.04.09
백준 - 2961번 도영이가 만든 맛있는 음식  (0) 2025.04.09
백준 -15652번 N 과 M (4)  (0) 2025.04.08