반응형
탐색과정에서 시간이 오래걸릴 때
예를 들어서 포켓몬 도감을 구현한다고 할때,
pokemons = [Bulbasaur, Ivysaur, Venusaur, Charmander, Charmeleon]
# 첫 번째 포켓몬부터 1번이라고 하자
- 사전 번호를 이용해서 포켓몬을 찾아야하는 경우가 있고,
ex) 3번 포켓몬 이름은? ----- Venusaur - 포켓몬 이름을 이용해서 사전 번호를 알아내야 하는 경우가 있다.
ex) Charmander 의 사전 번호는 ? ----- 4번
이럴 때는 리스트와 딕셔너리를 둘다 생성해서 이용해보자.
pokemons_dict['포켓몬이름'] = '사전번호'
가 되도록 하면 O(1) 만에 접근 가능하다.
두개의 리스트를 비교할 때도 딕셔너리를 자주 활용한다.
백준 1764 참고
https://www.acmicpc.net/problem/1764
백준 1620 참고
https://www.acmicpc.net/problem/1620
-dnlxo
반응형
'프로그래밍 > Python 알고리즘 문제' 카테고리의 다른 글
트리의 지름 (가장 먼 곳의 가장 먼 곳) (2) | 2021.06.09 |
---|---|
활동 선택, 스케쥴링 문제 (그리디) (0) | 2021.06.08 |
파이썬 예외 처리 기본 (0) | 2021.06.08 |
파이썬의 연산 시간에 대하여 (0) | 2021.06.08 |
DP와 메모이제이션 기본 (0) | 2021.06.04 |