728x90
Information
데크 또는 덱(deque, double-ended queue)은 양쪽 끝에서 삽입과 삭제가 모두 가능한 자료 구조의 한 형태이다.
두 개의 포인터를 사용하여, 양쪽에서 삭제와 삽입을 발생시킬 수 있다. 큐와 스택을 합친 형태로 생각할 수 있다.
요즘 파이썬 알고리즘 인터뷰 책을 읽기 시작했다. 1부를 시작하기 전 프롤로그에서 Deque를 만나면서 낯설기만 한 데크에 대해 알아본다.
데크
- Deque
- 자료구조
- 추상 자료형
- Abstract Data Type, 줄여서 ADT
- 양방향 자료형
- 스택 또는 큐로 사용 가능
- 추상 자료형
구현
1
from collections import deque
nums = [2, 4, 6, 8, 10]
que = deque(nums)
que.rotate(2) # 2만큼 오른쪽으로 회전
result = list(que)
print(result) # 출력 [8, 10, 2, 4, 6]
rotate 함수 n은 n 만큼 회전한다. 양수 n은 오른쪽, 음수 n은 왼쪽을 의미한다.
2
from collections import deque
deq = deque([2, 4, 6, 8, 10])
deque 메서드는 list 메서드와 비슷한 기능을 가진다.
deq.append(12)
print(deq) # 출력 deque([2, 4, 6, 8, 10, 12])
deq.appendleft(0)
print(deq) # 출력 deque([0, 2, 4, 6, 8, 10, 12])
print(deq.pop()) # 출력 12
print(deq) # 출력 deque([0, 2, 4, 6, 8, 10])
책도 읽고, 관련 글도 쓰면서 알고리즘 이해를 완성하고 싶다.
^-^
예시
03-04 collections.deque - 데크
deque는 앞과 뒤에서 데이터를 처리할 수 있는 양방향 자료형이다. 양방향이기 때문에 스택(Stack)처럼 써도 되고 큐(Queue)처럼 써도 된다. `collectio ...
wikidocs.net
도움 책
도움
https://ko.wikipedia.org/wiki/덱_(자료_구조)
https://ko.wikipedia.org/wiki/추상_자료형
728x90
'제로베이스 > 데이터분석' 카테고리의 다른 글
DataScience. tips data 시각화 (0) | 2021.11.18 |
---|---|
[기초노트]// numpy 삼각함수 그리기 cos, sin, tan (0) | 2021.11.17 |
DataScience. google trends 검색으로 보는 코로나19 관심도 (0) | 2021.11.02 |
DataScience. 내가 보유한 주식 fbprophet으로 예측해보기 (0) | 2021.11.02 |
DataScience. COVID-19 quarantine in Korea Analysis (0) | 2021.11.02 |