Here is the iterative implementation of binary search: For each call to binary_search below, indicate how many times the code inside the while loop will execute.  animals = ["aardvark", "cat", "dog", "elephant", "panda"] 1. binary_search("elephant", animals)                                                                                           2. binary_search("dog", animals)                                                                                           3. binary_search("anteater", animals

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Here is the iterative implementation of binary search:

For each call to binary_search below, indicate how many times the code inside the while loop will execute. 

animals = ["aardvark", "cat", "dog", "elephant", "panda"]

1. binary_search("elephant", animals)
 
                                                                                     
 
2. binary_search("dog", animals)
 
                                                                                     
 
3. binary_search("anteater", animals)
9.
def binary_search(item, lst):
10
11
Function
binary_search
--
12
Perform a binary search for a given item. Return True when a
matching item is found. Return False if no match is found.
13
14
Parameters:
15
item
the item to search for.
--
16
lst
the list to search in.
--
17
18
left_index
= 0
right_index
found = False
19
len (lst) - 1
%3D
20
21
right_index and not found:
(left_index + right_index) // 2
22
while left_index <=
23
middle
if lst[middle]
found = True
24
item:
25
26
elif item < lst[middle]:
27
# Search left
28
right_index
middle - 1
29
else:
30
# Search right
31
left_index
= middle + 1
32
return found
Transcribed Image Text:9. def binary_search(item, lst): 10 11 Function binary_search -- 12 Perform a binary search for a given item. Return True when a matching item is found. Return False if no match is found. 13 14 Parameters: 15 item the item to search for. -- 16 lst the list to search in. -- 17 18 left_index = 0 right_index found = False 19 len (lst) - 1 %3D 20 21 right_index and not found: (left_index + right_index) // 2 22 while left_index <= 23 middle if lst[middle] found = True 24 item: 25 26 elif item < lst[middle]: 27 # Search left 28 right_index middle - 1 29 else: 30 # Search right 31 left_index = middle + 1 32 return found
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Arrays
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education