ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

c语言oj题寻找消失的数字

c语言oj题寻找消失的数字 在数组nums中包含从0到n的所有整数但其中缺了一个使用c语言找到缺失的数字可以使用异或来完成可以创建一个从0到n完整的数组与缺某个数字的数组进行异或异或的规则是两个相同的数字异或为0,0与任何数字异或都是任何数字将所有的数字都进行异或一遍那么可以得出最终的结果为缺失的数字也是完整数组中多出来的数字。代码如下#include stdio.h#include string.h#include stdlib.hint missingNumber(int* nums,int numSize){int ret 0;for(int i0;inumsSize;i){ret ^ i;}for(int i0;inumsSize;i){ret^ nums[i];}return ret;}int main(void){int arr[9] {0,1,2,3,4,5,6,7,9};int numsSize sizeof(arr)/sizeof(arr[0]);int ret missingNumber(arr,numsSize);printf(最终缺失的数字为ret%d\n,ret);return 0;}
返回列表