Programmers / 3단계 / 단어 변환 / python / DFS/BFS

2024. 3. 16. 19:50·코딩테스트/programmers (python)

 

코딩테스트 연습 - 단어 변환 | 프로그래머스 스쿨 (programmers.co.kr)

 

 

 

모범 답안

최소 단계를 구하는 것이므로 BFS로 접근

from collections import deque

def solution(begin, target, words):
    if target not in words : 
        return  0
    return bfs(begin, target, words)

def bfs(begin, target, words):

    queue = deque()
    queue.append([begin, 0]) #시작 단어와 단계 0으로 초기화
    
    while queue:
        now, step = queue.popleft()
        
        if now == target:
            return step
        
        for word in words:
            count = 0
            for i in range(len(now)): 
                if now[i] != word[i]: 
                    count += 1
                    
            if count == 1: 
                queue.append([word, step+1])

 

'코딩테스트 > programmers (python)' 카테고리의 다른 글

Programmers / 3단계 / 이중우선순위큐 / python / heapq  (0) 2024.03.18
다익스트라(dijkstra) 알고리즘 파이썬 구현 코드  (1) 2024.03.18
Programmers / 3단계 / 정수 삼각형 / python / 동적계획법(Dynamic Programming)  (1) 2024.03.16
Programmers / 1단계 / 신고 결과 받기 / python / 2022 KAKAO BLIND RECRUITMENT  (0) 2024.03.13
Programmers / 2단계 / 배달 / python / Summer/Winter Coding(~2018)  (0) 2024.03.13
'코딩테스트/programmers (python)' 카테고리의 다른 글
  • Programmers / 3단계 / 이중우선순위큐 / python / heapq
  • 다익스트라(dijkstra) 알고리즘 파이썬 구현 코드
  • Programmers / 3단계 / 정수 삼각형 / python / 동적계획법(Dynamic Programming)
  • Programmers / 1단계 / 신고 결과 받기 / python / 2022 KAKAO BLIND RECRUITMENT
seulll
seulll
개인 공부 / 정리 블로그입니다
  • seulll
    seulll
    seulll
  • 전체
    오늘
    어제
    • 분류 전체보기 (338) N
      • 코딩테스트 (230) N
        • programmers (python) (156)
        • 백준 (python) (72) N
      • 자료구조 | 알고리즘 (14)
      • 개발 | 프로젝트 (43)
        • Python (4)
        • Java | Spring (7)
        • Android (5)
        • Unity (3)
        • API (4)
      • CS (15)
        • Network (5)
        • SQL (2)
        • OS (4)
      • 데이터 분석 (14)
      • 기타 (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 글쓰기
    • 설정
  • 링크

    • GitHub
  • 인기 글

  • 태그

    train_test_split
    solving environment
    파이썬
    프렌즈4블록
    바다코끼리
    백엔드
    카카오맵
    Boxplot
    프로그래머스
    kakao map api
    오차행렬
    티스토리챌린지
    그리디 알고리즘
    오블완
    asterisk
    confusion matrix
    백엔드 개발자 역량
    모델 성능 평가
    카카오맵 api
    웹크롤링
    대입 표현식
    박스플롯
    백엔드 개발자
    Python
    API
    야근 지수
    2 x n 타일링
    Greedy
    코딩테스트
    데이터분석
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
seulll
Programmers / 3단계 / 단어 변환 / python / DFS/BFS
상단으로

티스토리툴바