IT 일기장

[Python] 이진 검색 알고리즘 본문

프로그래밍 언어/Python

[Python] 이진 검색 알고리즘

뽕슈 2022. 8. 28. 18:20
반응형

친구랑 카페에서 공부하다 접하게된 알고리즘이다.

이해하기 쉽다 리스트에 숫자들을 담아서 내가 찾고자 하는 숫자가 몇번째에 있는지 찾는 알고리즘이다.

아래 코드에서 배열은 0번부터 시작이므로 4가 출력된다.

def Binary_Search(data, value):
	left = 0
	right = len(data) - 1
	while left <= right:
		middle = (left + right)
		if data[middle] == value:
			return middle
		elif data[middle] < value:
			left = middle + 1
		else:
			right = middle - 1
	return -1
data = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(Binary_Search(data,50))
반응형

'프로그래밍 언어 > Python' 카테고리의 다른 글

[Python] 문자열 format  (0) 2021.12.27
Comments