LintCode Q60 Search Insert Position in Python

  • Jinhai ZHOU
  • 3 Minutes
  • 2016年12月10日
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class Solution:
"""
@param A : a list of integers
@param target : an integer to be inserted
@return : an integer
"""
def searchInsert(self, A, target):
# write your code here
# binary search
if len(A) == 0:
return 0
lo = 0
hi = len(A) - 1
while lo <= hi:
mi = lo + (hi - lo)/2
if A[mi] < target:
lo = mi + 1
elif A[mi] > target:
hi = mi - 1
else: # A[mi] == target
return mi
if A[mi] < target:
return mi + 1
else: # A[mi] > target
return mi
知识共享许可协议
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。