가수면
이진 탐색, 순차 탐색 본문
이진 탐색
def binarySearch(data, searchValue):
if len(data) == 1 and searchValue == data[0]:
return True
if len(data) == 1 and searchValue != data[0]:
return False
if len(data) == 0:
return False
medium = len(data) // 2
if searchValue == data[medium]:
return True
else:
if searchValue > data[medium]:
return binarySearch(data[medium + 1:], searchValue)
else:
# 리스트 슬라이싱에서 [:medium]는 medium을 포함하지 않음
return binarySearch(data[:medium], searchValue)
순차 탐색
def sequencial(data_list, search_data):
for index in range(len(data_list)):
if data_list[index] == search_data:
return index
return -1
'CS > CS' 카테고리의 다른 글
다익스트라 알고리즘 (0) | 2023.11.10 |
---|---|
탐욕 알고리즘 (0) | 2023.11.10 |
퀵 정렬 알고리즘 (0) | 2023.11.09 |
동적 계획법 (0) | 2023.11.09 |
선택 정렬 알고리즘 (0) | 2023.11.09 |
Comments