오늘은 Queue 자료구조를 알아보자.
Queue를 설명할때 흔히 위의 구조처럼 생겼다고 설명한다.
Stack은 입구와 출구가 동일하고 하나라면 Queue는 입구와 출구가 다르다.
(Stack에 대해서 알고 싶다면 여기서 확인할 수 있다.)
Queue에서 요소가 들어가는 입구를 rear
라고 하고, 요소가 나오는 출구를 front
라고 합니다.
Queue의 특징을 얘기하라하면 FIFO라고 말을 하는데 FIFO가 뭘까?
우선, First Int First Out의 약자이다.
stack은 LIFO 특성을 가지고 있는데 이로 인해 stack에 들어간 요소들의 순서가 reverse되어 나오는 특성이 있다.
그렇다면 queue는 어떨까?
queue는 stack과 반대로 들어간 요소들의 순서 그대로 나오게 된다.
queue의 rear에 요소를 추가한다.
queue의 front로 요소를 제거한다.
queue가 비어 있는지 확인한다.
queue의 front의 요소를 반환한다.
queue의 크기를 반환한다.
queue에 대해 간단하게 알아봤다.
다음 포스팅에서는 Swift로 짠 코드를 올릴 예정이다.
이후에는 Stack과 Queue를 어떻게 활용할지?에 대해서 좀 얘기해보려한다.
아무튼 오늘도 이만!👋