Computer science/Algorithm

문자열 검색

잔망루피 2021. 3. 5. 21:01

단순한 문자열 검색 알고리즘

N=input()   # 패턴
M=input()   # 문자열
N_len=len(N)
M_len=len(M)
flag=0
i=0
while i <= M_len-N_len:
  for j in range(N_len):    # 패턴 길이만큼
    if N[j] != M[i+j] :
      flag=0
    else:
      flag=1
  if flag:
    print(i)
  i+=1      # 인덱스 1씩 증가

 

문자열M에서 패턴N을 찾고 그 시작 위치를 출력한다.

N과 M을 하나씩 비교한다. 

N과 M이 불일치하면 flag를 0으로 만든다.

일치하면 flag를 1로 할당한다.

 

반응형

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

Expression Binary Tree  (0) 2021.03.17
[C] Stack  (0) 2021.03.08
문자의 표현  (0) 2021.03.02
Selection Sort  (0) 2021.02.24
Binary Search  (0) 2021.02.22