BackTracking Bruteforce는 탐색 공간을 모두 탐색하며 가능한 해를 구하는 알고리즘이었다. 우리는 이전에 연산 횟수(탐색량)를 줄이기 위해 탐색 공간을 재정의하는 등의 과정을 통해 Bruteforce의 시간복잡도를 개선하는 방법을 익혔다.BackTracking은 Bruteforce에 첨가되는 기법과 같은 느낌으로, 탐색 공간을 조정하는 것 뿐만 아니라 탐색하지 않아도 되는 탐색 공간의 부분집합을 배제하는 과정을 통해 연산량을 줄이는 방법이다. 즉, 문제의 해가 만족하는 조건이 존재할 때, 그 조건을 만족하지 못하는 해는 미리 탐색에서 제외시킴으로써 연산량을 줄인다. 이러한 기법은 시간복잡도 개선에 유의미한 의미를 줄 수도 있고 그렇지 않을 수 있지만, 실제 프로그램의 동작이 훨씬 개선될..