본문 바로가기

프로그래밍/BOJ_Python 목표는 Diamond

[자료구조] Backtracking 기법

[자료구조] Backtracking 기법

 

DFS와는 다르게 탐색중인 경로에 답이 없다고 판단시 탐색시작 노드의 부모로 되돌아가 다른 방향으로 탐색하는 기법

해당 경로에 답이 있을 것 같은 경우 "유망하다"라고 말한다

DFS 탐색에서 유망한 조건만을 만족하는 방향만을 살펴보는 방식

 

def dfs():
	if promising(x):
    	dfs()
        
def promising(x):
	if 유망한경우 : return True
    return False

 

예제1. 백준 9663

백준 9663

백트래킹 이용

DFS를 수행하면서, 유망하지 않은 경로면 빽

출처

 

[Algorithm] 백트래킹(Backtracking): 안될 싹은 미리미리 가지치기

DFS 탐색 중 가능성이 없는 방향은 가지 않는 '백트래킹' 기법에 대해서 알아보겠습니다. [ Contents ] 1. DFS 2022.02.23 - [Algorithm] - [Algorithm] 깊이 우선 탐색(DFS), 끝까지 찾고 넘어가자 [Algorithm] 깊이 우

star7sss.tistory.com

 

'프로그래밍 > BOJ_Python 목표는 Diamond' 카테고리의 다른 글

[2475, 2920, 10172 | python] 검증수, 음계, 개  (0) 2023.07.13
[27866 | Python] 문자와 문자열  (1) 2023.07.13
[Python] isdigit() 함수  (0) 2022.10.06
[Python] round()함수  (0) 2022.10.04
Deque 자료형  (0) 2022.09.27