首页 > 代码库 > 476. Number Complement
476. Number Complement
Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.
Note:
- The given integer is guaranteed to fit within the range of a 32-bit signed integer.
- You could assume no leading zero bit in the integer’s binary representation.
Example 1:
Input: 5 Output: 2 Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.
首先得到输入的整数的二进制有x位,再将输入的输与x位的1按位异或
C++(6ms):
1 class Solution { 2 public: 3 int findComplement(int num) { 4 int a = ~0 ; 5 while(num&a){ 6 a<<=1; 7 } 8 a=~a; 9 return num^a; 10 } 11 };
476. Number Complement
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。