본문 바로가기
[R&D] 프로그래밍/자료구조

스택 (Stack), 큐 (Queue) 개념 정리

by Geuni 2022. 7. 5. 06:02
728x90
반응형

1. Stack

Stack

스택 (Stack)은 기본적으로 후입선출 (LIFO, Last In First Out)의 구조로 되어있습니다.

그림과 같이 한 쪽 끝에서만 데이터 교환이 이뤄지기 때문에 데이터를 꺼내갈 때 가장 마지막에 넣은 값이 나오게 됩니다. 

데이터를 입력하는(=삽입) 과정을 Push, 가져오는(=삭제) 과정을 Pop이라고 하며 Push와 Pop이 일어나는 상위 부분을 top라고 합니다.

 

스택은 후입선출이라는 특징을 이용해 다양하게 쓰입니다.

  • 웹 브라우저 앞/뒤로 가기
  • 실행 취소 (undo), 되돌리기 (redo)

2. Queue

Queue

큐 (Queue)는 선입선출 (FIFO, First In First Out)의 구조로 되어있습니다.

데이터의 입출력이 서로 다른곳에서 이루어집니다.

데이터 삽입을 Enqueue라고하며 그 부분을 Rear라고 하며,

데이터 삭제을 Dequeue라고 하며 그 부분을 Front 라고 합니다.

 

큐는 입력순서대로 데이터를 처리할 때 사용되는데 ,기본적인 데이터 통신에서 많이 쓰입니다.

  • 대기열 관리
  • 프로세스 스케쥴링
728x90
반응형

'[R&D] 프로그래밍 > 자료구조' 카테고리의 다른 글

다차원 배열 정리  (0) 2022.07.25

댓글