완전 탐색 (Exhaustive Search)
모든 경우의 수를 전부 찾아서 답을 찾는 알고리즘이다.
알고리즘을 풀 때 가장 강력하고 확실한 방법이지만 시간이 가장 오래 걸리는 탐색 기법이다.
brute fore algorithm
이라고도 불린다.
자원만 충족해준다면 항상 100%의 정확도가 보장된다.
0000 ~ 9999
로 이루어진 임의의 비밀번호를 찾고 싶을 때, 가능한 모든 조합은 1만 개(10^4)이다.
완전탐색 기법의 종류
- Brute Force : for문과 if문을 이용하여 처음부터 끝까지 탐색하는 방법
- 비트 마스크 : 이진수 표현을 자료구조 쓰는 기법 (AND, OR, XOR, SHIFT, NOT)
- 재귀함수
- 순열 : 서로 다른 n개의 원소에서 r개의 중복을 허용하지 않고 순서대로 늘어 놓은 수
- BFS(너비우선탐색), DFS(깊이우선탐색)
참고자료
'알고리즘 > 알고리즘 종류 설명' 카테고리의 다른 글
알고리즘 풀 때, 주의할 점 (0) | 2021.08.19 |
---|---|
Dijkstra 알고리즘이란 무엇인가? (0) | 2021.08.15 |
Floyd 알고리즘이란 무엇인가? (0) | 2021.08.14 |
Backtracking이란 무엇인가? (0) | 2021.08.04 |
DP란 무엇인가? (0) | 2021.08.04 |
댓글