PYTHON Using binary search, how many checks would it take to determine if the number 400 is or is not contained in the list shown below? Make sure provide an explanation of your answer. [100, 150, 175, 225, 235, 245, 300, 400, 1000, 1300]
PYTHON
Using binary search, how many checks would it take to determine if the number 400 is or is not contained in the list shown below? Make sure provide an explanation of your answer.

python
def binarySearch(alist, item):
first = 0
last = len(alist)-1
found = False
check=0
while first<=last and not found:
check+=1
midpoint = (first + last)//2
if alist[midpoint] == item:
check+=1
found = True
else:
if item < alist[midpoint]:
check+=1
last = midpoint-1
else:
first = midpoint+1
return found,check
alist = [100, 150, 175, 225, 235, 245, 300, 400, 1000, 1300]
print(binarySearch(alist, 400))
OUTPUT:-
(True, 3)
>
Step by step
Solved in 3 steps with 2 images









