陣列中出現兩次的數

brucehb發表於2017-03-12
假設你有一個用1001 個整陣列成的陣列,這些整數是任意排列的,但是你知道所有的整數都在1 到1000(包括1000)之間。此外,除一個數字出現兩次外,其他所有數字只出現一次。假設你只能對這個陣列做一次處理,用一種演算法找出重複的那個數字。如果你在運算中使用了輔助的儲存方式,那麼你能找到不用這種方式的演算法嗎?
int fun(int a[])
{
	int result = a[0];
	for (int i = 1; i < 1001; i++)
	{
		result ^= i;
		result ^= a[i];
	}
	
	return result;
}


相關文章