雪儿的专栏

题目描述:

假设 你用一个1001个整数组的数组,这些整数是任意排列的,但是你知道所有的整数都在1到1000(包括1000)之间,,此外,除一个数字出现两次外,其他所有数字只出现一次。假设你只能对这个整数做一次处理,用一种算法找出重复的那个数字。(不用辅助的存储方式)

1.sum up all the number,then subtract the sum from 1001*1002/2(即1+2+3+……….+1001);

2.利用A XOR A XOR B=B;(A XOR A =0)

代码如下:

int findX(int a[]){int k = a[0];for (int i = 1; i <= 1000; i++)k~= a[i]~i;return k;}

那些曾经以为念念不忘的事情就在我们念念不忘的过程里,被我们遗忘了。

雪儿的专栏

相关文章:

你感兴趣的文章:

标签云: