zuai-logo

What does the following code output?

python
list = [2, 5, 7, 8, 11, 12]
target = 13
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Not Found

Flip to see [answer/question]
Flip to see [answer/question]

All Flashcards

What does the following code output?

python
list = [2, 5, 7, 8, 11, 12]
target = 13
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Not Found

What does the following code output?

python
list = [2, 5, 7, 8, 11, 12]
target = 8
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Found

Identify the error in the following code:

python
def binary_search(list, target):
 low = 0
 high = len(list) - 1
 while low < high:
 mid = (low + high) // 2
 if list[mid] == target:
 return mid
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
 return -1

The code will enter an infinite loop if the target is not found because the condition low < high will not become false, and it does not handle the case when low == high. It should be low <= high.

What does the following code output?

python
list = [1, 3, 5, 7, 9]
target = 4
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Not Found

What does the following code output?

python
list = [1, 3, 5, 7, 9]
target = 1
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Found

Identify the error in the following code:

python
def binary_search(list, target):
 low = 0
 high = len(list)
 while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 return mid
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
 return -1

IndexError: list index out of range. high = len(list) should be high = len(list) - 1

What does the following code output?

python
list = [1, 2, 3, 4, 5]
target = 6
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Not Found

What does the following code output?

python
list = [1, 2, 3, 4, 5]
target = 1
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Found

Identify the error in the following code:

python
def binary_search(list, target):
 low = 0
 high = len(list) - 1
 while low < high:
 mid = (low + high) // 2
 if list[mid] == target:
 return mid
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
 return -1

The while loop condition low < high should be low <= high to correctly handle the case when the target is the last element.

What does the following code output?

python
list = [1, 5, 9, 13, 17]
target = 9
low = 0
high = len(list) - 1
while low <= high:
 mid = (low + high) // 2
 if list[mid] == target:
 print("Found")
 break
 elif list[mid] < target:
 low = mid + 1
 else:
 high = mid - 1
else:
 print("Not Found")

Found

What is Binary Search?

A search algorithm that repeatedly divides a sorted list in half to find a target value.

What is Linear Search?

A search algorithm that checks each item in a list sequentially until the target value is found.

What is Time Complexity?

A measure of the amount of time taken by an algorithm to run as a function of the input size.

What is O(n) Time Complexity?

Linear time complexity, where the time taken increases linearly with the input size.

What is O(log n) Time Complexity?

Logarithmic time complexity, where the time taken increases logarithmically with the input size.

What does 'sorted list' mean?

A list where elements are arranged in a specific order (ascending or descending).

Define 'search space'.

The portion of the data structure that is being examined by a search algorithm.

What is an algorithm?

A step-by-step procedure for solving a problem.

What is a Data Structure?

A way of organizing and storing data.

What is the 'middle element' in binary search?

The element located at the midpoint of the current search space.

How is Binary Search applied in real-world scenarios?

Searching for a word in a dictionary, finding a contact in a sorted phone book, or locating data in a sorted database index.

Give an example of using Binary Search in a database system.

Finding a specific record by ID in a sorted index of a database table.

How is Binary Search used in version control systems?

Identifying the commit where a bug was introduced using a process similar to binary search (bisecting).

How is Binary Search applied in searching for a value in a sorted array?

Efficiently locating a specific number in a sorted array of integers or floating-point numbers.

How is Binary Search used in searching for a file on a sorted file system?

Quickly finding a file by name in a sorted directory structure.

How is Binary Search utilized in finding a specific entry in a sorted configuration file?

Efficiently locating a configuration setting in a sorted configuration file.

How is Binary Search applied in finding a specific page in a sorted index of a book?

Quickly locating a page number in a sorted index of a book.

How is Binary Search used in searching for a value within a specific range?

Efficiently finding a value that falls within a specified range in a sorted dataset.

How is Binary Search applied in searching for a specific item in a sorted inventory list?

Quickly locating an item by its unique identifier in a sorted inventory list.

How is Binary Search used in searching for a specific record in a sorted log file?

Efficiently finding a log entry by timestamp in a sorted log file.