Grave algumas operações de bits inteligentes

Topo topo topo topo topo topo topo topo topo topo topo topo topo topo topo

Resumo das habilidades de operação de bits (atualização contínua ...)

1. Número 3 que só aparece uma vez

Usar a operação XOR pode nos ajudar a eliminar números que aparecem duas vezes

x & (-x)  é o 1 mais à direita nos bits reservados e o outro 1 é definido como 0.

Dois, 191. O número de bits 1

(Quando x não é 0) x & (x-1)  é um método para alterar o 1 mais à direita para 0 e manter o resto dos bits inalterados.

Além do que, além do mais:

Altere o primeiro 0 da direita para 1: x ou (x + 1)

Transforme os 1s consecutivos à direita em 0: x e (x + 1)

Altere os 0s consecutivos à direita para 1: x ou (x-1)

 

image.png

3. Defina uma determinada posição como 0 ou defina-a como 1 ou negue-a

Defina a i-ésima posição de x (contado da direita) para 1, x = x | (1 << (i-1))

Defina a posição i de x (contando da direita) para 0, x = x &! (1 << (i-1))

Inverta a i-ésima posição de x (contando da direita), x = x ^ (1 << (i-1))

Acho que você gosta

Origin blog.csdn.net/hbhhhxs/article/details/107982514
Recomendado
Clasificación