본문 바로가기
코딩 테스트/이진 탐색

순차 탐색

by hazel_ 2021. 2. 16.
  • 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 방법
  • 정렬되지 않은 리스트에서 데이터를 찾아야 할 때 사용
  • 데이터가 아무리 많아도 시간이 충분하다면 항상 원하는 데이터를 찾을 수 있음
  •  count() 함수도 내부적으로 순차 탐색이 수행됨
  •  
def sequential_search(n, target, array):
  for i in range(n):
    if array[i]==target:
      return i+1
  return -1 # 찾는 원소가 없을 시 -1 return

print("생성할 원소의 갯수와 찾을 문자열을 띄어쓰기 한 칸으로 구분하여 입력하세요.")
input_data=input().split()
n=int(input_data[0])
target= input_data[1]

print("앞서 적은 원소의 갯수만큼 문자열을 입력하세요. 구분은 띄어쓰기 한 칸으로 합니다.")
array=input().split()

print(sequential_search(n,target,array))

 

 

최악의 경우 모든 데이터를 다 봐야하므로 시간복잡도는 O(N)이다.

'코딩 테스트 > 이진 탐색' 카테고리의 다른 글

고정점 찾기  (0) 2021.02.18
정렬된 배열에서 특정 수의 개수 구하기  (0) 2021.02.18
떡볶이 떡 만들기  (0) 2021.02.18
부품 찾기  (0) 2021.02.18
이진 탐색  (0) 2021.02.16

댓글