[CS] 추상 자료형 - 스택(Stack), 큐(Queue)

해니·2022년 11월 30일
0

CS

목록 보기
3/15
post-thumbnail

☁️ 추상 자료형 (Abstract Data Type ,ADT)

  • 구현하고자 하는 구조에 대해 구현 방법은 명시하지 않고 자료구조의 특성들과 어떤 Operations가 존재하는지를 설명하는 자료구조의 한가지 형태
  • 대표적인 ADT에는 큐 ,스택 ,트리가 있음



✨ 스택 (Stack)

  • 데이터를 집어넣을 수 있는 선형(linear) 자료형
  • 밑바닥부터 탑을 쌓듯이 차곡차곡 데이터를 쌓아올린 자료 구조
  • 후입선출(Last In First Out ,LIFO) 방식: 가장 마지막에 들어온 데이터가 가장 먼저 리턴 ,삭제됨
  • 데이터 추가(push), 데이터 추출 (pop), 가장 마지막에 추가한 데이터 확인(peek) 등의 작업을 할 수 있음
  • 서로 관계가 있는 여러 작업을 연달아 수행하면서 이전의 작업 내용을 저장해 둘 필요가 있을 때 널리 사용됨
  • Stack overflow: 꽉 차 있는 스택에 push()를 하여 스택의 최대 용량을 벗어나는 경우




🐳 큐 (Queue)

  • 데이터를 집어넣을 수 있는 선형 (linear) 자료형

  • 선입선출(First In First Out ,FIFO) 방식: 가장 먼저 들어온 데이터가 가장 먼저 리턴, 출력됨

  • 양방향 입구로 한쪽에서는 데이터의 입력만이 이루어지고 다른 쪽에서는 데이터의 출력만이 이루어짐

  • 삽입 연산(enqueue) , 삭제 연산 (dequeue) 등의 작업을 할 수 있음

  • 순서대로 처리해야 하는 작업을 임시로 저장해두는 버퍼(buffer)로서 많이 사용됨









출처

스택, 큐 (Stack, Queue)

profile
💻 ⚾️ 🐻

0개의 댓글