Complement of Base 10 Integer - Math - Easy - LeetCode
💻 coding

Complement of Base 10 Integer - Math - Easy - LeetCode

1 min read 221 words
1 min read
ShareWhatsAppPost on X
  • 1Every non-negative integer N can be represented in binary without leading zeroes, except for N = 0.
  • 2The complement of a binary number is obtained by flipping all bits: changing 1s to 0s and 0s to 1s.
  • 3The provided algorithm computes the binary complement of a base-10 integer N and returns it as a base-10 integer.

AI-generated summary · May not capture all nuances

Key Insight
AskGif

"Every non-negative integer N can be represented in binary without leading zeroes, except for N = 0."

Complement of Base 10 Integer - Math - Easy - LeetCode

Every non-negative integer N has a binary representation. For example, 5 can be represented as "101" in binary, 11 as "1011" in binary, and so on. Note that except for N = 0, there are no leading zeroes in any binary representation.

The complement of a binary representation is the number in binary you get when changing every 1 to a 0 and 0 to a 1. For example, the complement of "101" in binary is "010" in binary.

For a given number N in base-10, return the complement of it's binary representation as a base-10 integer.

Example 1:

Input: 5 Output: 2 Explanation: 5 is "101" in binary, with complement "010" in binary, which is 2 in base-10. Example 2:

Input: 7 Output: 0 Explanation: 7 is "111" in binary, with complement "000" in binary, which is 0 in base-10. Example 3:

Input: 10 Output: 5 Explanation: 10 is "1010" in binary, with complement "0101" in binary, which is 5 in base-10.

Note:

0 <= N < 10^9

public class Solution {
 public int BitwiseComplement(int N) {
 if(N == 0){
 return 1;
 }
 
 int ans = 0;
 int curr = 1;
 
 while(N != 0){
 
 if(N % 2 == 0){
 ans += curr; 
 }
 N /= 2;
 curr *= 2;
 }
 
 return ans;
 }
}

Time Complexity: O(n)

Space Complexity: O(1)

Enjoyed this article?

Share it with someone who'd find it useful.

ShareWhatsAppPost on X

sumitc91

Published on 1 October 2020 · 1 min read · 221 words

Part of AskGif Blog · coding

You might also like