leetcode第35题,典型的二分查找,这里不但要查找存在的元素,对于不存在的元素还要找出其插入的位置。
很明显,使用二分查找,二分查找可以自然地返回不存在元素插入的位置。
我的代码有一些不完备,加了一点补丁。
n = [1,2,3,10,22]
t = 4
def searchInsert(nums, target):
n = len(nums)
if target > nums[-1]:
return n
else:
left = 0;right = n-1
while left < right:
mid = (left+right)/2
if target > nums[mid]:
left = mid+1
else:
right = mid
return left
ans = searchInsert(n,t)
print ans