티스토리 뷰
큐(Queue)
개념: 스택과 마찬가지로 삽입, 삭제의 위치와 방법이 제한되어있는
유한 순서 리스트(Finite ordered list)지만,
스택과 달리 리스트의 한쪽 끝에서는 삽입 작업이 이루어지고,
반대쪽 끝에서는 삭제 작업이 이루어져서
삽입된 순서대로 삭제되는
선입선출(FIFO: First In First Out)
구조 입니다!
흔한 예로 볼수 있는게
놀이동산의 놀이기구 기다리는 줄이 있죠.
즉 스택은 뒤에서 들어오고 뒤에서 빠져나가기 때문에 배열의 용량 관련한 문제가 없다.
하지만 큐는 뒤에서 들어와서 앞으로 빠져나가기 때문에 빠져나갔을때 나머지것들을 앞으로 옮겨야 하며, 옮기지 않을경우
앞의 배열 공간은 비면 서 뒤에는 계속 늘어나는 형태이므로 사용할수 있는 공간이 큐를 사용할수록 점점 줄어든다.
그렇기 때문에 배열로 구현한 큐는 원형큐로 사용하는것이 좋다.
front는 이동한 다음 원소를 지우고 rear도 이동한 다음 원소를 삽입한다.
'자료구조' 카테고리의 다른 글
내식대로 구현한 자바 연결리스트(linkedlist) 코드 (0) | 2017.09.27 |
---|---|
배열로 구현한 큐 (자바코드) (0) | 2017.09.13 |
[자료구조/선형자료구조]링크드리스트(연결리스트),스택 (0) | 2017.08.27 |
[자료구조/sort] 병합정렬 (Merge Sort) (0) | 2017.08.17 |
[자료구조/sort] 선택정렬 (0) | 2017.08.16 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- async
- state
- await
- storybook
- Polyfill
- useRef
- return type
- webpack
- Action
- useEffect
- reducer
- mobx
- computed
- javascript
- reflow
- hydrate
- rendering scope
- props
- Next.js
- type alias
- atomic design
- design system
- es6
- react hooks
- reactdom
- promise
- react
- typescript
- server side rendering
- Babel
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함