1순차 탐색으로 특정 값의 위치 찾기
다음은 순차 탐색 알고리즘을 이용하여 주어진 리스트 [17, 92, 18, 33, 58, 5, 33, 42]에서 특정 값(18, 33, 900)을 찾아서 해당 위치 번호를 돌려주는 프로그램입니다.
프로그램 7-1
순차 탐색 알고리즘
◉ 예제 소스 p07-1-search.py
# 리스트에서 특정 숫자의 위치 찾기
# 입력: 리스트 a, 찾는 값 x
# 출력: 찾으면 그 값의 위치, 찾지 못하면 -1
def search_list(a, x):
n = len(a) # 입력 크기 n
for i in range(0, n): # 리스트 a의 모든 값을 차례로
if x = = a[i]: # x 값과 비교하여
return i # 같으면 위치를 돌려줍니다.
return -1 # 끝까지 비교해도 없으면 -1을 돌려줍니다.
v = [17, 92, 18, 33, 58, 7, 33, 42]
print(search_list(v, 18)) # 2(순서상 세 번째지만, 위치 번호는 2)
print(search_list(v, 33)) # 3(33은 리스트에 두 번 나오지만 처음 나온 위치만 출력)
print(search_list(v, 900)) # -1(900은 리스트에 없음)
실행 결과
2
3
-1