완전탐색은 문제를 해결하기 위해
가능한 모든 경우의 수를 탐색하는 알고리즘 기법
단순하고 직관적이지만,
효율성 면에서 최적이 아닐 수 있음
구현이 간단하고, 모든 경우를 고려하므로 최적의 해를 보장
경우의 수가 많아질 경우, 시간 복잡도가 매우 높아져 비효율적
주어진 숫자들 중에서 조합이나 순열을 생성해야 할 때 유용함
체스나 틱택토와 같은 게임에서
모든 가능한 수를 탐색할 때 사용됨
그래프에서 모든 경로를 시도하여
최단 경로를 찾는 데 사용될 수 있음
모든 경우를 재귀적으로 탐색하는 방법
반복문을 통해 가능한 모든 조합을 생성하는 방법
불필요한 경우의 수를 미리 배제하여
탐색 범위를 줄이는 기법
중복 계산을 피하기 위해 결과를 저장하는 기법