一、题目:
一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。
二、思路:
1、根据题目有:下标和数组元素就是对应相同的的,所以依次遍历,不同的就是缺失的,返回。不否则就返回数组长度。
class Solution {
public:
int missingNumber(vector<int>& nums) {
for(int i=0;i<nums.size();i++){
if(nums[i]!=i)
return i;
}
return nums.size();
}
};
2、由于是排序数组,所以可以采用二分法查找
//to do
怕什么真理无穷,进一步有进一步的欢喜!