완전탐색 - 브루토포스 (exhaustive/brute-force search)을 개선한 기법이다. 후보해 들을 단계적으로 만들어가는 과정에서 후보해들을 평가한다. 만약 한 후보해가 최종해가 될 수 없다고 판단되면 탐색을 멈추고 다른 후보해를 탐색한다. -> 최적화문제와 결정문제 해결이 가능하다 DFS(Depth First Search) 또는 그와 같은 스타일의 탐색을 총칭한다. 되추적(Backtracking) 이란?-어떤 노드의 유망성을 점검한 후, 유망하지 않다고 판정이 되면 그 노드의 부모 노드로 돌아가서 다음 자식 노드에 대한 탐색을 계속한다. 이렇게 가능성을 보고 가지치기를 하며 가능한 것들을 판단한다. 다음 예시로는 순열 생성 되추적이 있다. 이것의 알고리즘은 다음과 같고 Java로는 다음..