Getting None from bs function which is binary search as a recursion it should return the minimum number with rotating arrays. But I am getting None
def bs(a, tempArray, L, R):
mid = (L + R) // 2
print(mid, L, R)
if tempArray[mid + 1] == "T":
L = mid + 1
elif tempArray[mid - 1] == "F":
R = mid - 1
elif tempArray[mid] == "F":
return a[mid]
bs(a, tempArray, L, R)
a = [3, 4, 5, 6, 7, 1, 2]
# T, T, T, T, T, F,F
end = a[len(a) - 1]
tempArray = []
for i in a:
if i <= end:
tempArray.append("F")
else:
tempArray.append("T")
L, R = 0, len(a) - 1
smallest = bs(a, tempArray, L, R)
print(smallest)