완전탐색

canyi·2023년 5월 3일
0

자료구조

목록 보기
5/22

완전탐색

  • 장점 : 반드시 답을 찾을수 있다.

  • 단점 : 오래 걸린다. (리소스를 많이 잡아 먹는다.)

  • trade-off 관계: 컴퓨팅 자원 <-> 시간

Brute-force (무차별 대입)

  • ex) 비밀번호 숫자 4자리

경우의 수 10^4 = 10000가지 (0~9999) 를 전부 입력해보면 컴퓨터로 금방 뚫는다.

가장 확실한 방법이라 의외로 많이 쓰인다.

  • 암호화, 수학 등 학계에서도, PS에서도 널리 쓰이는 알고리즘
  • 4색정리 증명서에도 쓰였다.
  • 보안이 허술한 곳을 진짜 이런 방법으로도 계정 탈취가 될수 있다.

순열 (permutation)

  • 모든 경우의 수를 순서대로 살펴볼 때 용이하다.
  • 삼성에서 next_permutation 활용하면 쉽게 풀리는 문제들이 많이 나왔다고 한다.

조합 (combination)

  • 파이썬은 combination까지 기본으로 제공

순열이랑 사용법은 비슷한데, 순서와 상관없이 경우의 술를 뽑아온다.

profile
백엔드 개발 정리

0개의 댓글