# JS로 Queue 자료구조 구현하기

껌뻑이·2021년 7월 22일
0

자료구조

목록 보기
2/2
post-thumbnail

JS로 Queue 자료구조 구현하기

Queue란?

먼저 집어 넣은 데이터가 먼저 나오는 FIFO(First In First Out) 형식의 자료구조이다.

은행에 갔다고 가정하자.
먼저 번호표를 뽑았으면(First In) 먼저 은행원과 상담을 받고 갈 수 있다(First Out)
이것이 바로 queue 자료구조의 형식이다 (FIFO, First In First Out)

함수

queue에 넣는 것은 push(), 빼는 것은 shift()이다.

Queue 구현

queue 자료구조에 1에서 5의 숫자를 넣고 빼는 과정

const queue = [];

// queue = []

for (let i = 1; i <= 5; i++) {
  queue.push(i);
}
// 1 ~ 5를 차례대로 queue 배열에 대입

// queue = [1, 2, 3, 4, 5]

const output = []

for (let i = 1; i <= 5; i++) {
  const shift = queue.shift()
  output.push(shift)
}
// queue 배열에 5번 shift()을 해준다.

// queue        output
// [2,3,4,5]    [1]
// [3,4,5]      [1, 2]
// [4,5]        [1, 2, 3]
// [5]          [1, 2, 3, 4]
// []           [1, 2, 3, 4, 5]

이처럼 output 배열 즉, queue 배열에서 shfit 한 결과 기존 queue 배열에 들어간 순서 그대로 나오는 것을 알 수 있다.

0개의 댓글