반응형
Queue와 Deque 알고리즘을 풀 때 어느것을 사용해야 될 까
파이썬 공식문서의 Queue 모듈 내용을 보면 다음과 같은 내용이 있다
collections.deque is an alternative implementation of unbounded queues with fast atomic append() and popleft() operations that do not require locking.
여기서 deque이 훌륭한 대체제이고 locking을 요구 하지 않는다고 나와 있다.
그리고 Queue 모듈의 내용을 읽으면 계속해서 Thread safe, multi 어쩌구 얘기가 나온다.
즉 Queue는 한마디로 비동기 작업에 thread safe 한 목적으로 구현된 것을 알 수 있다.
그리고 소스코드를 까보면 안에 뮤텍스 관련된게 있다.
그리고 하나 재밌는 사실이 있다. Queue 모듈은 내부적으로 deque를 사용한다..
결론 : 알고리즘 풀 때 deque를 사용하자
queue는 나중에 서버개발 할 일 있을 때 사용하는 것으로...
반응형
'Python > 알고리즘팁' 카테고리의 다른 글
파이썬 다차원 배열 복사 시 주의사항 (0) | 2022.12.15 |
---|---|
파이썬 약수 구하기 (0) | 2022.12.13 |
[파이썬] global과 nonlocal 이해하기 (0) | 2022.01.21 |
파이썬 순열/조합 permutation, combination 사용하기 (0) | 2021.04.15 |
파이썬 문자 아스키코드 얻는법 (0) | 2021.04.02 |
댓글