Algorithm/Study
[Algorithm] 완전탐색
BeNI
2021. 2. 26. 18:01
728x90
1. 완전탐색
1) 개념 : 말 그대로 가능한 모든 경우의 수를 다 탐색하는 것
2) 방법
ⓐ 브루트 포스(Brute-Force) : 영어를 번역하면 무차별 대입이라는 뜻이다.
ⓑ 비트마스크(BitMask) : 이진수를 사용하는 컴퓨터의 연산 방식을 이용하여, 정수의 이진수 표현을 자료 구조로 쓰는 기법
ⓒ 순열
ⓓ BFS(너비우선탐색)
ⓔ 백트래킹 : DFS에 가지치기를 통해 가도되지 않는 루트는 고려하지 않고 탐색하는 완전탐색 기법
<출처 : 브랜든의 블로그 :: [알고리즘] 완전탐색 (tistory.com)>
2. 해결방법
1) 주어진 문제를 선형 구조로 구조화
2) 구조화된 문제공간을 적절한 방법으로 해를 구성할 때까지 탐색
3) 구성된 해를 정리
EX) 10의 약수구하기
- 10의 약수가 될 수있는 모든 자연수를 구조화 (1,2,3,4,5,6,7,8,9,10}
- 탐색을 이용하여 첫번째 원소부터 마지막 원소까지 탐색 (1,2,5,10)
- 해 정리 {1,2,5,10}
728x90