자료구조발행일 2023. 4. 11.원본 https://blog.naver.com/jword_/223070117324 ↗

자료구조 스택과 큐 1분만에 이해하기

자료구조 스택과 큐 1분만에 이해하기 — #자료구조스택 #자료구조큐 AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을 작성하였습니다 자료구...

#자료구조#Naver Blog

#자료구조스택 #자료구조큐

​

AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을 작성하였습니다

자료구조 스택

이전글을 통해 자료구조 배열과 리스트에 대한 개념을 짚고 넘어갔습니다. 이번에는 중요한 자료구조 스택과 큐에 대해 알아보도록 하겠습니다.

​

스택과 큐는 비슷하면서도 다른 자료구조입니다. 처음 공부하실때는 감이 잘 안잡히실 수 있습니다. 우선 둘은 배열과 리스트로 구현 가능한 자료구조라는 점과 자료를 어떻게 관리할 것인지에 대한 방법론이라는 관점에서 접근하는게 좋습니다. 그 후 두 자료구조가 어떻게 다른지 차이점을 이해하시는게 좋습니다.

스택

프링글스

프링글스 통을 배열, 과자를 요소라고 표현해보면 스택을 설명할 수 있습니다. 프링글스가 과자를 어떻게 담고 있는지 생각해봅시다. 가장 처음에 담은 과자는 맨 아래로, 가장 마지막의 과자는 맨 위로 배치가 됩니다. 그리고 나서 맨 위의 과자가 먼저 나가는 후입 선출 방식으로 과자를 먹습니다.

​

이미지

​

스택은 이와 마찬가지로 맨 앞부터 차례대로 요소를 배치하고 맨뒤의 요소를 먼저 제거하는 방식의 자료구조입니다.

​

해당 자료구조는 ctrl + z의 되돌리기(UNDO) 기능, 웹페이지의 뒤로가기 기능 등에 사용될 수 있습니다.

​

큐

식당의 줄

이번에는 대학식당가를 생각해봅시다. 학생들이 일렬로 줄을 서서 차례대로 한명씩 식권을 발급받습니다. 이때 당연하게도 맨 앞의 학생이 가장 먼저 식권을 발급받고 맨 뒤의 학생은 맨 마지막에 식권을 발급받습니다. 그러다 학생이 추가로 오면 맨 뒤부터 차례대로 줄을 섭니다. 식당의 줄은 선입 선출 구조를 보입니다.

​

이미지

​

큐도 식당의 줄처럼 선입선출 방식의 자료구조입니다. 맨 앞의 자료가 가장 먼저 나오며, 새로운 자료가 추가될때는 맨 뒤부터 자료가 추가됩니다.

​

큐를 이용하여 식당처럼 예약 시스템을 만들 수 있습니다. 가장 먼저 예약한 사람에게 해당 서비스를 우선적으로 제공하고 이후에는 순차적으로 서비스를 제공하는 프로그램을 만들 수 있습니다.

​

​