Given a number N. The task is to find the number of set bits in its binary representation using recursion.
Input : 21
Output : 3
21 represesnted as 10101 in binray representation
Input : 16
Output : 1
16 represesnted as 10000 in binray representation
- First, check the LSB of the number.
- If the LSB is 1, then we add 1 to our answer and divide the number by 2.
- If the LSB is 0, we add 0 to our answer and divide the number by 2.
- Then we recursively follow step (1) until the number is greater than 0.
Below is the implementation of the above approach :
- Sum of digit of a number using recursion
- Decimal to binary number using recursion
- Add the given digit to a number stored in a linked list using recursion
- Count number of trailing zeros in Binary representation of a number using Bitset
- Count number of subsets having a particular XOR value
- Count pairs with Bitwise-AND as even number
- Count pairs with Bitwise XOR as EVEN number
- Count pairs (A, B) such that A has X and B has Y number of set bits and A+B = C
- Count pairs with Bitwise AND as ODD number
- Count pairs with Bitwise OR as Even number
- Count pairs with Bitwise XOR as ODD number
- Count total bits in a number
- Count unset bits of a number
- Count number of set bits in a range using bitset
- Count number of ways to partition a set into k subsets
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.