content: check if a number is a power of 2 (#196)

* Check if a number is a power of 2

This representation may be easier to understand for some people.
If a number is power of two then `AND` operation between the number and its complement will result into the same number.

* Update binary.md

Co-authored-by: Yangshun Tay <tay.yang.shun@gmail.com>
pull/199/head
Saddam H 4 years ago committed by GitHub
parent 7f6a3e96f8
commit 11f9a22b86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -17,7 +17,7 @@ Some helpful utility snippets:
- Set k<sup>th</sup> bit: `num |= (1 << k)`.
- Turn off k<sup>th</sup> bit: `num &= ~(1 << k)`.
- Toggle the k<sup>th</sup> bit: `num ^= (1 << k)`.
- To check if a number is a power of 2, `num & num - 1 == 0`.
- To check if a number is a power of 2, `(num & num - 1) == 0` or `(num & (-num)) == num`.
## Corner cases

Loading…
Cancel
Save