[자료구조] 큐(Queue) | javascript
[자료구조] 큐(Queue) | javascript
📋 [ 자료구조 ] 시리즈 몰아보기 (4)
📚 큐(Queue)
데이터를 집어넣을 수 있는 선형(linear) 자료형으로 선입선출
의 구조를 가진다. 대용량 파일 로딩
과 같은 기능이 요구될 때 사용된다.
구현해야 할 기능은 다음과 같다.
enqueue(item)
: queue에item
을삽입
한다.dequeue()
: queue에서가장 먼저 삽입된 원소
를 제거한다.peek()
: queue에 가장 먼저 삽입된 원소를 출력한다.clear()
: queue를 초기화한다.length()
: queue의 크기를 출력한다.
js에서는 배열
을 이용하여 간단히 구현 가능하다.
1 | let store = []; |
- enqueue(item) : store.push(item)
- dequeue() : store.shift()
- peek() : return store[0]
- clear() : store.splice(0);
- length() : return store.length
🖥️ 소스코드
1 | const Queue = () => { |
2 | let store = []; |
3 | |
4 | return { |
5 | enqueue(item) { |
6 | store.push(item); |
7 | }, |
8 | dequeue() { |
9 | store.shift(); |
10 | }, |
11 | peek() { |
12 | return store[0]; |
13 | }, |
14 | clear() { |
15 | store.splice(0); |
16 | }, |
17 | length() { |
18 | return store.length; |
19 | } |
20 | }; |
21 | }; |
# 자료구조
# Js
# javascript
# 큐
# Queue
👨💻 관련 포스트
[자료구조] 스택(Stack) | javascript
[자료구조] 스택(Stack) | javascript
javascript로 이해하는 자료구조 [스택(stack)] : 스택(stack)은 데이터를 입력할 수 있는 선형 자료형으로 선입후출의 구조를 가지며 ctrl+z와 같은 기능에서 요구되는 자료형이다. javascript에서는 배열을 이용해 손쉽게 구현할 수 있다.
2023-04-20
[자료구조] 덱(Deque) | javascript
[자료구조] 덱(Deque) | javascript
javascript로 이해하는 자료구조 [덱(deque)] : 덱(deque)은 스택(stack)과 큐(queue)를 합친 자료구조로 head, tail 구분 없이 양방향에서 자료를 입출력 할 수 있는 자료형이다. javascript에서는 배열을 이용해 손쉽게 구현할 수 있다.
2023-04-21
[자료구조] 연결리스트(linked_list) | javascript
[자료구조] 연결리스트(linked_list) | javascript
javascript로 이해하는 자료구조 [연결리스트(linked-list)] : 연결리스트(linked-list)는 리스트의 일종으로 노드(node)와 데이터가 포인터(pointer)를 가지고 한 줄로 이어져있는 형태를 띈다. 자료의 추가 및 삭제 시간복잡도가 O(1)이나 다른 자료형보다 저장공간을 많이 차지하는 단점이 있다.
2023-04-25
💡 로그인 하지 않아도 댓글을 등록할 수 있습니다!