CS/자료구조

[자료구조] 스택 (Stack)

meizzi 2024. 8. 17. 12:59
728x90
반응형

1. 스택 (Stack)

  • 후입선출 (Last In Fitst Out; LIFO) 자료구조
    • 마지막에 들어온 데이터가 먼저 나가는 구조
  • 데이터가 입력된 순서의 역순으로 처리되어야 할 때 사용
    • ex) 함수 콜 스택, 수식 계산, 인터럽트 처리 등

2. 스택 기본 구조

  • 후입 선출 구조
  • 기본적으로 데이터 추가, 꺼내기, 스택 공간 확인 동작으로 이루어짐

3. 스택 기본 연산

      • 데이터 추가 (Push)
        • 스택의 가장 마지막 위치에 데이터 추가
      • 데이터 꺼내기 (Pop)
        • 스택의 가장 마지막 위치에서 데이터 꺼냄

4. 코드

Stack stack = new Stack();

stack.push(1); // [1]
stack.push(2); // [1, 2]
stack.push(3); // [1, 2, 3]
stack.push(4); // [1, 2, 3, 4]
stack.push(5); // [1, 2, 3, 4, 5]

stack.pop(); // [1, 2, 3, 4]
stack.pop(); // [1, 2, 3]

stack.peek(); // 3, 현재 가장 마지막 데이터
stack.contains(1); // true
stack.size(); // 3
stack.empty(); // false
stack.clear(); // []
stack.pop(); // error
728x90
반응형