Computer science/Algorithm

Exhausitive Search(완전 검색)

잔망루피 2020. 1. 28. 00:06

안녕하세요 : ) 오늘은 완전 검색 알고리즘의 특징을 알아보겠습니다.

 

Exhausitive Search : Brute-force 또는 Generate-and-Test 라고도 부른다.

모든 경우의 수를 테스트하여 결과를 도출해낸다.

일반적으로 경우의 수가 상대적으로 작을 때 유용하다.

수행속도는 느리지만 답을 찾아내지 못할 확률은 거의 없다.

 

t="TTTTATTATTTCTAACCA"    # 텍스트
p="TTATTTCT"              # 패턴
N, M=18, 8       # 텍스트 길이, 패턴 길이

for i in range(N):
  for j in range(M):
    # 실패했을 경우 다시 시작점으로 간다
    if t[i+j] != p[j]:
      break
    # 패턴을 찾았을 경우
  if j+1 == M :   # 길이가 같을 것이다
      print("find")
      break

 

처음부터 끝까지 문자열t에서 문자열p를 찾는다.

 

 

 

참고 👇

https://hongjw1938.tistory.com/78

 

알고리즘 - 완전탐색(Exhaustive Search)

1. 완전탐색 알고리즘이란? 완전탐색은 간단히 가능한 모든 경우의 수를 다 체크해서 정답을 찾는 방법이다. 즉, 무식하게 가능한 거 다 해보겠다는 방법을 의미한다. 이 방법은 무식하게 한다는

hongjw1938.tistory.com

 

반응형

'Computer science > Algorithm' 카테고리의 다른 글

2차원 List  (0) 2020.02.01
정렬  (0) 2020.01.31
Greedy Algorithm(탐욕 알고리즘)  (0) 2020.01.28
파이썬 자료형 : tuple, list, dictionary, set  (0) 2020.01.27
알고리즘  (0) 2020.01.27