완전탐색

Rudy·2023년 12월 1일
0

완전 탐색 무엇인가?

완전 탐색은 모든 경우의 수를 시도 하여 문제해결의 가장 기본적인 방법이다.
Brute:날것의 무식한 Force: 힘
별도의 최적화 없이, 효율성을 고려하지 않는 풀이방법
대표적인 예시로 4자리 숫자 암호를 찾으라고 하면 0000 ~ 9999 순차적으로 찾는 방식이다

풀이방법

  • 모든 경우의 수를 체계적으로 검사할 수 있도록 설계해야 한다.
  • 문제가 요구하는 바를 이해하고, 정확히 구현할 수 있어야 한다.

가장 쉽고 간단한 접근을 생각한다

  • 효율을 생각하지 않기 때문에 문제의 크기가 작으면 유용하다.
  • 문제의 크기가 클수록 시간/공간복잡도가 늘어나 적용이 어려울 수 있다.
  • 완전한 정답이 되지 못하더라도 문제를 이해하거나 테스트케이스를 확인하기 위한 용도로 적용해볼 수 있다.
  • 부분점수 문제라면 전체를 풀지 못해도 작은 데이터에 대한 점수를 얻을 수 있다.
  • 선형 완전탐색, 비선형 완전탐색 등이 있으나 아직은 선형탐색만 가능 하다
profile
주니어 개발자

0개의 댓글