[알고리즘] 그림으로 알아보는 문자열 검색 알고리즘 - 부르트포스, KMP 알고리즘
·
CS/Data Structure
이번 포스팅에서는 문자열 검색 알고리즘 중 부르트포스, KMP 알고리즘에 대해서 적어보겠습니다.1. 부르트포스(단순비교)브루트포스는 통상적으로 모든 경우를 검색하는 과정을 얘기하죠. 선형검색을 기반으로 순차적으로 단순비교를 진행하는 문자열 검색 알고리즘으로 가장 기초적이고 원시적인 방법입니다.두 문자열의 길이의 곱만큼 연산을 진행하기에 시간복잡도는 O(NM)입니다.구현과정문자열ABABCB에서 문자열ABC를 검색하는 경우입니다. 순차적인 비교이기 때문에 어렵지 않습니다.2. KMP알고리즘부르트포스 알고리즘에서 개선된 문자열 검색 알고리즘입니다. 비교가 필요하지 않은 부분은 건너뛰고 비교가 필요한 부분만 비교함으로써 성능을 개선시키는 알고리즘입니다.부르트포스 알고리즘의 시간복잡도가 O(NM) 이었다면, KM..