Phép toán xoá bit phải nhất

Về cây BIT có phép toán xoá bit bên phải nhất là:

x-=x&-x
và cộng thêm bit vào bit phải nhất là
x+=x&-x
Nhưng e k hiểu toán tử x&-x và sao lại vậy ạ ?. Mong mọi người giúp ạ

Nó sẽ thực hiện phép toán & trên từng bit dữ liệu của x.
Vd: x = 5 :point_right: x = 0000 0101, -x = 1111 1011
:point_down:

 x    0000 0101
 &
-x    1111  1011
--------------
x&-x  0000 0001

do đó

x -= x&-x = 0000 0101 - 0000 0001 = 0000 0100

còn

x += x&-x = 0000 0101 + 0000 0001 = 0000 0110
4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?