投稿How to find a duplicate element in an array of shuffled consecutive integers?が出てきましたが、後でこれが多くの入力で失敗することがわかりました。 EXのために配列内の重複要素を見つけるためにXOR演算子を使用すると多くの場合失敗する
:重複した要素はすべてのケースのために見つけることができるように
arr[] = {601,602,603,604,605,605,606,607}
#include <stdio.h>
int main()
{
int arr[] = {2,3,4,5,5,7};
int i, dupe = 0;
for (i = 0; i < 6; i++) {
dupe = dupe^a[i]^i;
}
printf ("%d\n", dupe);
return 0;
}
どのように私はこのコードを変更することができますか?
私は理解することができないオフセットについて述べている投稿に出会ったhttp://stackoverflow.com/questions/8018086/xor-to-find-duplicates-in-an-array 誰かが何かを提案することができます.. ?? – Snehasish