스택

    • 후입선출 (LIFO: Last-In First-Out)의 형태로 제한되는 자료구조

    추상화 (Abstraction)

    • 새로운 자료형을 정의하려면 그 자료형의 자세하고 복잡한 내용 대신에 필수적이고 중요한 특징만 골라서 단순화시키는 작업
    • 추상 자료형(ADT: Abstract Data Type): 추상화를 통해 정의한 자료형

    peek vs pop

    • peek: pop과 비슷하게 상단 요소를 반환하지만, 연산 후에도 스택의 상태는 변하지 않는다.
    • peek 대체 = pop으로 꺼내서 확인한 후 push 다시 넣으면 원래 상태 유지

    isEmpty vs isFull

    • isEmpty: 스택의 공백 상태 검사
    • isFull: 스택의 포화 상태 검사

    overflow vs underflow

    • overflow: 포화 상태인 스택에 새로운 요소를 삽입하는 경우
    • underflow: 공백 상태의 스택에서 pop이나 peek을 호출하면 삭제나 참고가 불가하여 언더플로 발생

    스택을 구현하는 방법

    • 배열 구조: 자료들을 배열에 모아 저장하는 방법으로, 모든 요소는 인접한 메모리 공간에 저장된다.
      장점: 크기가 고정된 일반 공책과 비슷하여 각 페이지를 쉽게 찾아 편리하게 사용 가능
      단점: 공책이 가득 차면 더는 저장 불가능
    • 연결된 구조: 인접한 메모리 공간이 아니라 흩어져 있는 요소들을 연결하여 하나로 관리하는 방법
      장점: 바인더 공책처럼 페이지의 위치를 바꾸거나 새로운 페이지를 쉽게 추가하고 삭제할 수 있어 배열 구조보다 유연하게 사용 가능
      단점: 관리하기 복잡하다

    답글 남기기

    이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다