반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 자바
- 알고리즘
- Import
- 스택
- Combination
- LV.1
- java
- 트리
- html
- 좋은 알고리즘
- 태그
- 유한소수 판별하기
- itertools
- 과일 장수
- 들여쓰기로 표현한 트리
- list
- 알고리즘의 조건
- 자료구조
- 알고리즘의 조건 5가지
- 큐
- 유사코드
- import itertools
- 코딩테스트
- python
- 파이썬
- 알고리즘 표현
- 프로그래머스
- 리스트
- 코딩 테스트
- Tree
Archives
- Today
- Total
인천의 자유인
자료구조 - 덱(deque) 본문
728x90
반응형
덱이란?
덱(deque)은 double-ended queue의 줄임말로서 전단과 후단에서 모두 삼입과 삭제가 가능한 큐를 말합니다. 다만 여전히 중간에는 삼입, 삭제는 불가능합니다.

반응형
덱의 연산
덱은 큐에서 몇가지 연산이 추가된다.
- addFront(e): 새로운 요소 e를 전단에 추가
- addRear(e): 새로운 요소 e를 후단에 추가
- deleteFront(): 덱의 전단 요소를 꺼내서 반환
- deleteRear(): 덱의 후단 요소를 꺼내서 반환
- getFront(): 덱의 전단 요소를 삭제하지 않고 반환
- getRear(): 덱의 후단 요소를 삭제하지 않고 반환
- isEmpty(): 덱이 비어있으면 True를 아니면 False를 반환
- isFull(): 덱이 가득 차 있으면 True를 아니면 False를 반환
- size(): 덱에 들어있는 전체 요소의 수를 반환
주의해야할 연산은 front와 rear를 감소시켜야 하는 deleteRear와 addFront입니다. 이들은 원형 큐의 enqueue나 dequeue와는 다르게 인덱스를 하나 줄여야 하는데, 이것을 반시계 방향 회전을 의미한다.

연산은 이런 방식으로 이루어 집니다.
b를 보면 C를 삭제할 경우에 rear가 반시계 방향으로 바뀌는 모습을 볼 수 있습니다. 또한 c는 전단 삼입을 하는 경우인데, 이러면 front가 반시계 방향으로 회전하게 됩니다.
728x90
반응형
'알고리즘&자료구조' 카테고리의 다른 글
자료구조(리스트) - 배열 구조 vs 연결된 구조 (0) | 2024.08.12 |
---|---|
자료구조 - 리스트(List) (0) | 2024.08.09 |
자료구조 - 큐(Queue) (0) | 2024.08.03 |
파이썬으로 팩토리얼 구하기(반복문, 순환 이용) (0) | 2024.08.01 |
자료구조 - 스택(stack) (0) | 2024.07.29 |