September 4
Nella programmazione, ci sono molte volte che è necessario passare due valori variabili (come ad esempio in un Bubble Sort). La maggior parte delle persone si mostrerà come farlo con tre variabili e utilizzare le operazioni inutili, ma in grado di mostrare come farlo con due ... efficiente!
XOR Comprensione:
XOR o OR esclusivo, è simile a quello comunemente usato INCLUSIVE-O, tranne che se entrambi gli ingressi sono 1, l'uscita è 0 (al contrario di INCLUSIVE-Or, dove il valore è 1).
Questo risolve questo caso in cui normalmente fare qualcosa di simile:
int II1 = 1;
int II2 = 2;
int tmp;
tmp = II1;
II1 = II2;
II2 = tmp;
2 Ora, la magia:
Un XOR tripla effettuata su due variabili passerà loro !!!
Così, in C #:
int II1 = 1;
int II2 = 2;
II1 ^ = II2;
II2 ^ = II1;
II1 ^ = II2;
Le variabili sono state ora scambiato senza utilizzare una variabile temporanea!