자료구조에서의 Stack과 Queue (Python, Java, Javascript)

Jeenie·2025년 5월 6일
0

CS

목록 보기
2/2


이미지 출처

JavaScript의 배열(Array)은 스택도 큐도 아니다.
그냥 양쪽 끝에서 삽입/삭제가 가능한 유연한 자료구조

push() + pop()로 스택처럼 쓸 수 있고
push() + shift()로 큐처럼 쓸 수도 있다.

즉, 양방향에서 삽입/삭제가 가능한 덱(deque)처럼 행동할 수 있는 것.

JavaScript 자체에는 Stack이나 Queue라는 전용 자료구조는 없기 때문에
배열로 직접 구현해야 한다.

다른 언어의 경우

언어스택 자료구조큐 자료구조
JavaStack, Deque, Queue 있음Queue, LinkedList 등
Pythonlist, dequequeue.Queue, collections.deque
JS❌ 없음❌ 없음 (배열을 활용)

JavaScript에선 스택/큐 문제를 풀 때
배열로 스택처럼 쓸지, 큐처럼 쓸지를 직접 정해야한다.

결론

  • JS 배열은 기본적으로 스택도, 큐도 아님
  • 하지만 스택처럼 (push/pop) 혹은 큐처럼 (push/shift) 사용할 수 있음
  • 스택/큐는 JS에 내장되어 있지 않기 때문에 직접 구현해서 사용해야 함
profile
Web Front-end developer

0개의 댓글