*문제 출처는 프로그래머스에 있습니다.
문제 제목: 단어 변환 (3단계)
문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/43163
문제 설명
나의 풀이
from collections import deque
def solution(begin, target, words):
answer = 0
q = deque()
q.append((begin, 0))
visited = [False for _ in range(len(words))]
while q:
word, idx = q.popleft()
if word == target:
answer = idx
break
for i in range(len(words)):
cnt = 0
if not visited[i]:
for j in range(len(word)):
if word[j] != words[i][j]:
cnt += 1
if cnt == 1:
q.append([words[i], idx + 1])
visited[i] = True
return answer
※ 알아야 할 것
BFS는 주로 큐의 자료구조를 이용하여 문제를 해결한다.
'코딩테스트(프로그래머스 & 백준) > 프로그래머스-Python' 카테고리의 다른 글
Programmers / 최고의 집합 / Python (0) | 2024.05.06 |
---|---|
Programmers / 야근 지수 / Python (0) | 2024.05.03 |
Programmers / 이중우선순위큐 / Python (0) | 2024.04.12 |
Programmers / 124 나라의 숫자 / Python (0) | 2024.04.11 |
Programmers / 점 찍기 / Python (0) | 2024.04.09 |