코딩테스트에서 유용한 Counter와 deque
1. Counter
시퀀스 타입 데이터의 원소 개수를 dict형으로 반환해주는 아주 유용한 함수
from collections import Counter로 불러온다
집합 연산도 가능함 근데 큰 의미가 있을까?
리스트 내에서 개별 원소들의 빈도수를 세는 것에는 분명히 의미 있다
2. deque
스택과 큐를 동시에 구현한 자료형
from collections import deque로 불러온다
append, extend, pop 등을 모두 지원하는데
list가 $O(n)$이라면 deque는 $O(1)$이라는 점에서 유용하다
append로 오른쪽에 데이터를 넣어주고
appendleft로 왼쪽에 데이터를 넣어준다
extend로 오른쪽에 리스트 데이터를 넣어주고
extendleft로 왼쪽에 리스트 데이터를 넣어준다
extendleft 결과에 주목 5,6,7이 붙는게 아니라 7,6,5가 붙어... 의미가 있나??
rotate(n)으로 데이터를 n칸 오른쪽 이동
pop으로 오른쪽 데이터를 빼낸다
popleft로 왼쪽 데이터 빼내기
'프로그래밍 > Python' 카테고리의 다른 글
파이썬의 변수(variable)와 데이터 타입(type) (0) | 2022.01.18 |
---|---|
파이썬의 피클(pickle) (0) | 2022.01.17 |
파이썬의 튜플(Tuple), 집합(set), 사전(dict)에 대하여 (0) | 2022.01.11 |
파이썬의 스택(stack)과 큐(queue) (0) | 2022.01.02 |
Python의 여러가지 논리연산 (0) | 2021.12.27 |
TAGS.