프로그래밍/Python 알고리즘 문제

탐색과정에서 시간이 오래걸릴 때

야뱝이 2021. 6. 8. 21:17
반응형

탐색과정에서 시간이 오래걸릴 때

예를 들어서 포켓몬 도감을 구현한다고 할때,

pokemons = [Bulbasaur, Ivysaur, Venusaur, Charmander, Charmeleon]
# 첫 번째 포켓몬부터 1번이라고 하자
  1. 사전 번호를 이용해서 포켓몬을 찾아야하는 경우가 있고,
    ex) 3번 포켓몬 이름은? ----- Venusaur
  2. 포켓몬 이름을 이용해서 사전 번호를 알아내야 하는 경우가 있다.
    ex) Charmander 의 사전 번호는 ? ----- 4번

이럴 때는 리스트와 딕셔너리를 둘다 생성해서 이용해보자.

pokemons_dict['포켓몬이름'] = '사전번호'

가 되도록 하면 O(1) 만에 접근 가능하다.

두개의 리스트를 비교할 때도 딕셔너리를 자주 활용한다.

백준 1764 참고

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

백준 1620 참고

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

-dnlxo

반응형