思路:
第一种方法:
1)计算两个数组总和 即 ret1 ret2
2)缺失值=ret2-ret1
第二种方法:
1)按位异或(0按位异或任何数都为任何数,按位异或具有交换律)
方法1:
int missingNumber(int* nums, int numsSize)
{
int ret1=0;
int ret2=0;
for(int i=0;i<numsSize;i++)
{
ret1+=nums[i];
}
for(int k=0;k<numsSize+1;k++)
{
ret2+=k;
}
return ret2-ret1;
}
方法2:
int missingNumber(int* nums, int numsSize)
{
int k=0;
for(int i=0;i<numsSize;i++)
{
k ^= nums[i];
}
for(int j=0;j<numsSize+1;j++)
{
k ^= j;
}
return k;
}