몽땅뚝딱 개발자

[자료구조] Queue와 Stack의 차이점 본문

Something Useful/또 다른 정보

[자료구조] Queue와 Stack의 차이점

레오나르도 다빈츠 2021. 11. 4. 01:19

 

◽ 스택(Stack)

- 차곡차곡 쌓는 것. 자료가 시간 순서에 따라 층층이 겹쳐 쌓인다.

- 후입선출(LIFO, Last-In-First-Out) 구조로 가장 마지막에 삽입된 자료가 가장 먼저 삭제된다.

- top 한 곳에서 삽입, 삭제가 이루어진다.

- 삽입하는 연산을 'Push', 삭제하는 연산을 'Pop'이라고 한다.

- 비어있는 스택에서 원소를 추출하는 경우 stack underflow, 스택이 넘치는 경우 stack overflow라 한다.

예시) 웹 브라우저의 방문기록(뒤로 가기), 역순 문자열 만들기, 실행 취소 등

 

◽ 큐(Queue)

- 줄을 서서 기다리는 것. 시간 순서대로 처리해야하는 경우에 사용한다.

- 선입선출(FIFO, First-In-Fisrt-Out) 구조로 가장 먼저 삽입된 자료가 가장 먼저 삭제된다.

- 작업구역이 한 곳인 스택과 달리 큐는 한쪽 끝에서 삽입/다른 쪽 끝에서 삭제가 되어 양쪽에서 이루어진다.

- 삭제연산이 수행되는 곳은 프론트(또는 머리, Front)이며 삭제연산을 디큐(dnQueue)라고 한다.

- 삽입연산만 이루어지는 곳은 리어(또는 꼬리, Rear)이며 삽입연산을 인큐(enQueue)라고 한다.

예시) 은행 업무, 게임 대전 매칭 시스템 등

 

 

 


 

 

출처

 

[자료구조] 스택 (STACK), 큐(QUEUE) 개념/비교 /활용 예시

[자료구조] 스택 (STACK), 큐(QUEUE) 개념/비교 /활용 예시/ 실생활 활용 스택 (STACK)이란? 📌 스택의 개념 스택(stack)이란 쌓아 올린다는 것을 의미한다. 따라서 스택 자료구조라는 것은 책을 쌓는 것

devuna.tistory.com

 

'Something Useful > 또 다른 정보' 카테고리의 다른 글

release, deploy의 차이  (0) 2021.12.14
WAS와 Web의 차이  (0) 2021.11.18
[Web] 쿠키(Cookie)와 세션(Session)  (0) 2021.11.10
[Web] DOM, 그리고 BOM이란?  (0) 2021.11.04
[라이브러리] Canvas2Html 사용하기  (0) 2021.07.18
Comments