Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Modify the function so that, instead of returning -1 when the target value is not in the list, raises a TargetNotFound exception (you'll need to
Modify the function so that, instead of returning -1 when the target value is not in the list, raises a TargetNotFound exception (you'll need to define this exception class). Otherwise, it should function normally. Name this function bin_except.
def binary_search(a_list, target):
first = 0
last = len(a_list) - 1
while first <= last:
middle = (first + last) // 2
if a_list[middle] == target:
return middle
if a_list[middle] > target:
last = middle - 1
else:
first = middle + 1
return -1
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started