Python에서 pop(0) 사용이 많으면, deque를 사용하자

유알·2024년 1월 12일
0

https://www.acmicpc.net/problem/9019

  • DSLR 문제를 아무리 풀어도 시간 초과가 났다.
  • 그래서 다른 풀이도 봤는데, 로직상 다른점은 없었다.

단순 리스트( [] ) 대신 deque 를 쓰니까 해결되었다.

파이썬은 역시,,, 너무 추상화 되어 있다. 내생각에는 아마 리스트의 기본 구현이 ArrayList 같은걸로 되어 있는게 아닐까 싶다.

그러니까, 앞에서 하나씩 꺼낼 때 마다 매우 비효율 적인 동작을 하고 있던거였다.

별짓을 다해도 시간초과가 나던 문제가, pop(0)deque::popLeft로 바꾸자 바로 해결되었다.

profile
더 좋은 구조를 고민하는 개발자 입니다

0개의 댓글