Advertisement
Guest User

Untitled

a guest
Dec 17th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.40 KB | None | 0 0
  1. def bbbsearch(A):
  2.   start = 0
  3.   end = len(A) - 1
  4.  
  5.   while (start <= end):
  6.     mid = (start + end)/2
  7.    
  8.     if (A[mid] == mid):                      # i == A[i]
  9.       if (mid == 0 or A[mid-1] != mid-1):
  10.         return mid
  11.       else:
  12.         end = mid - 1
  13.     elif (A[mid] < mid):
  14.       start = mid + 1
  15.     else:
  16.       end = mid - 1
  17.      
  18.   # Fall-through: no match found
  19.   return -1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement