By converting to Binary String
In this approach we converts the number to a binary string using toString(2) and then checks if there are any occurrences of ’11’ in the string. If there are no consecutive ‘1’s the number is sparse.
Example: Implementation to check if a number is sparse or not by converting the number to Binary String.
function isSparse(num) {
const binary = num
.toString(2);
return !/11/
.test(binary);
}
console.log(isSparse(21));
console.log(isSparse(31));
Output
true false
JavaScript Program to Check if a Number is Sparse or Not
A number is considered sparse if it does not have any consecutive ones in its binary representation.
Example:
Input: n=21
Output: True
Explanation: there are no consecutive 1s in the binary representation (10101). Therefore, 21 is a sparse number.
Input: n=22
Output: False
Explanation: there are consecutive 1s in the binary representation (10110). Therefore, 22 is bot a sparse number.
Below are the approaches to check if a number is sparse is not:
Table of Content
- 1. By Using Bitwise Operators
- 2. By converting to Binary String
- 3. Using Regular Expression
- 4. By Manually Iterating Through Binary Digits