从0,1,2,...,n这n+1个数中选择n个数,找出这n个数中缺失的那个数,要求O(n)尽可能小。
题目描述
从0,1,2,...,n这n+1个数中选择n个数,找出这n个数中缺失的那个数,要求O(n)尽可能小。
示例1
输入
复制
[0,1,2,3,4,5,7]
返回值
复制
6
class Solution {
public:
/**
* 找缺失数字
* @param a int整型一维数组 给定的数字串
* @param aLen int a数组长度
* @return int整型
*/
int solve(int* a, int aLen) {
// write code here
int l = 0, r = aLen-1;
while (l<r) {
int mid = l+(r-l)/2;
if (a[mid] == mid) {
l = mid +1;
}else {
r = mid;
}
}
return l;
}
};