# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 找缺失数字 # @param a int整型一维数组 给定的数字串 # @return int整型 # class Solution: def solve(self , a ): # write code here #解法1,使用一层for循环,逐个检查元素,满足基本要求 #for i in range(len(a)): #if a[i]!=i: #return i #return len(a) #解法2,从中间元素开始比较,如果中间元素 a[index]>index,说明缺失元素在左边;否则a[index]=index,说明缺失元素在右边,此时时间复杂度相对较低 #设置i,j为存在缺失元素的区间,初始化i=0,j=len(a) i = 0 j = len(a) center = int((i+j)/2) while i<j: if a[center]==center : i = center+1 else: j = center center = int((i+j)/2) return center