Vidyalelo
Data Structure · Q937

Miscellaneous on Data Structures

Programming · Data Structure · question 937

Q937

In which of the below cases will the following code produce a wrong output? int recursive_binary_search(int *arr, int num, int lo, int hi) if(lo > hi) return -1; int mid = (lo + hi)/2; if(arr[mid] == num) return mid; else if(arr[mid] < num) lo = mid + 1; else hi = mid - 1; return recursive_binary_search(arr, num, lo, hi);

A.
Array: {0,0,0,0,0,0} Search: -10
B.
Array: {1,2,3,4,5} Search: 0
C.
Array: {5,4,3,2,1} Search: 1
Answer
D.
Array: {-5,-4,-3,-2,-1} Search: -1

Answer: Option C

Solution

Answer: Option C
No explanation is given for this question Let's Discuss on Board