조건을 만족하는 해를 구할 때, 조건에 맞는 해가 아니라면 이전으로 돌아가 만족하는 해를 찾는 과정을 반복하는 알고리즘.
1 2 3
4 5 6
7 8 9
핸드폰 키패드와 비슷한 행렬에서 3개의 숫자를 선택하는데, 단 선택한 숫자들의 행과 열은 모두 중복되면 안된다. 3개의 숫자 중 가장 큰 숫자는?
DFS로 구현한다면
1-4-7-8-9-5-7-8 ... 3-6-7-8-9
의 순서대로 순회를 할테지만
주어진 조건에서 행과 열은 모두 중복되지 않아야 하는 조건이 있다.
따라서 백트래킹으로 구현한다면
1-4(조건에 만족x)-5-7-8(조건에 만족x)-9...3-5-8(조건에 만족x)-9
의 순서대로 순회를 한다.