Superior superior superior superior superior superior superior superior superior superior superior superior superior superior superior superior
Resumen de habilidades de operación de bits (actualización continua ...)
1. Número 3 que solo aparece una vez
Usar la operación XOR puede ayudarnos a eliminar números que aparecen dos veces
x & (-x) es el 1 más a la derecha en los bits reservados y el otro 1 se establece en 0.
(Cuando x no es 0) x & (x-1) es un método para cambiar el 1 más a la derecha a 0 y mantener el resto de los bits sin cambios.
Adicionalmente:
Cambie el primer 0 de la derecha a 1: x o (x + 1)
Convierta los 1 consecutivos de la derecha en 0: x y (x + 1)
Cambie los ceros consecutivos a la derecha a 1: x o (x-1)
3. Establezca una posición en 0 o en 1 o inviértala
Establezca la i-ésima posición de x (contada desde la derecha) en 1, x = x | (1 << (i-1))
Establezca la posición i de x (contando desde la derecha) en 0, x = x &! (1 << (i-1))
Invertir la posición i-ésima de x (contando desde la derecha), x = x ^ (1 << (i-1))