2017-02-21 2 views

Antwort

2

Nr

Angenommen, Sie bedeuten, dass die erste Zahl in der Reihe wird mit dem zweiten XOR-verknüpft werden, und das Ergebnis davon wäre mit dem dritten XOR-verknüpft werden, usw., dann erwägen, die unter Kontra :

[1,2,6,4]

einen binären XOR unterhalb Bitdarstellungen siehe:

100 XOR 010 = 110

110 XOR 01 1 = 101

101 XOR 001 = 100

Die XOR aller Zahlen in der Anordnung der ersten Anzahl in dem Array gleich ist.

+3

Ordnung und Implementierung sind nicht wichtig wegen commutativity und Assoziativität der xor-Operation. Aber schönes Beispiel. – Paul

3

0b00 XOR 0b01 XOR 0b10 XOR 0b11 == 0b00

1

Die Zahl 0 ein ziemlich interessantes Merkmal in diesem Zusammenhang hat:

a xor 0 = a, a != 0 

Dies ist bereits die Hälfte der Antwort auf die Frage:
XOR-ing Für den Inhalt der {a, 0}, a != 0 eingestellt würde als Ergebnis a ergeben. Also ist die Antwort nein.
Für jede Menge von Zahlen N, wo eine Teilmenge MM = N \ {a} und xor(M) = 0 vorhanden ist, mit den Eigenschaften xor(N) = a hält:

Dies kann noch weiter ausgebaut werden. M hat die Eigenschaft, dass die Anzahl der 1bits auf jeder Bit-Position, auch sei:

N = {100, 010, 001, 011} 
a = 100 
M = {010, 001, 011} 

    M: 0 1 0 
     0 0 1 
     0 1 1 
count: 0 2 2 

xor(N) = 100 
Verwandte Themen