Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.

Note:

  1. The given integer is guaranteed to fit within the range of a 32-bit signed integer.
  2. 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.

    Example 2:

    Input: 1
    Output: 0
    Explanation: The binary representation of 1 is 1 (no leading zero bits), and its complement is 0. So you need to output 0.
  3. 思路:给定一个正整数,输出它的补数。补数的策略是通过翻转二进位表示。
  4. 1.求出该数的二进制位数; 
    2.通过给定数num和相同位数的二进制数(全为1)进行异或,即可求出补数。
  5.  public int findComplement(int num) {
    
                int ans = 0;//the count of the num's bits
    int temp = num;//copy of the num
    while(temp != 0){
    ans++;
    temp /= 2;
    }
    return num ^ (int)(Math.pow(2,ans)-1);
    }

    pow() 函数用来求 x 的 y 次幂(次方),其原型为:
             double pow(double x, double y);

最新文章

  1. RMS问题整理
  2. MyBatis之代理开发模式
  3. linq小笔记;
  4. reduce()
  5. mac office
  6. ubuntu 14.04 下安装jdk8及 smartgithg
  7. Linux之用户管理
  8. WIN7 如何关闭Aero
  9. 利用servlet做转发,实现js跨域解决同源问题
  10. MapReduce输出格式
  11. 乐视手机查看运行内存方法、EUI(Eco User Interface)乐视系统查看手机运行内存方法
  12. Android 加速Gradle构建项目
  13. 开箱即用 - Grunt合并和压缩 js,css 文件
  14. S2-032代码执行
  15. FusionWidgets DrawingPad图
  16. 如何实现从Java入门到服务端项目开发的进阶?
  17. centos7虚拟机克隆后设置固定IP
  18. javascript的单例/单体模式(Singleton)
  19. AFNetWorking能做什么
  20. 嵌套的ng-repeat双层循环,内层如何获取外层的$index?

热门文章

  1. centos 6.5 yum安装lnmp
  2. Android应用程序项目结构
  3. UITextInputMode currentInputMode is deprecated. 警告的解决
  4. SQL SERVER 2008破解加密存储过程(修正存储过程过长解密出来是空白的问题)
  5. 洛谷——P3353 在你窗外闪耀的星星
  6. sql多表更新
  7. 学习swift从青铜到王者之swift属性09
  8. 使用python分析解压zip、jar包等
  9. 百亿级企业级 RPC 框架开源了!
  10. Effective C++ Item 27 少做转型操作