zoukankan      html  css  js  c++  java
  • 476 Number Complement 数字的补数

    给定一个正整数,输出它的补数。补数是对该数的二进制表示取反。
    注意:
        给定的整数保证在32位带符号整数的范围内。
        你可以假定二进制数不包含前导零位。
    示例 1:
    输入: 5
    输出: 2
    解释: 5的二进制表示为101(没有前导零位),其补数为010。所以你需要输出2。

    示例 2:
    输入: 1
    输出: 0
    解释: 1的二进制表示为1(没有前导零位),其补数为0。所以你需要输出0。
    详见:https://leetcode.com/problems/number-complement/description/

    C++:

    class Solution {
    public:
        int findComplement(int num) {
            bool start=false;
            for(int i=31;i>=0;--i)
            {
                if(num&(1<<i))
                {
                    start=true;
                }
                if(start)
                {
                    num^=(1<<i);
                }
            }
            return num;
        }
    };
    

     参考:http://www.cnblogs.com/grandyang/p/6275742.html

  • 相关阅读:
    Tomcat部署项目
    正则表达式
    文件的上传和下载
    实现扫码登陆
    onepill Android端
    部署SpringBoot到阿里云
    Gson
    HTML自动刷新页面
    Spring Data JPA根据属性名查询
    Spring Date JPA实现增删改查
  • 原文地址:https://www.cnblogs.com/xidian2014/p/8903129.html
Copyright © 2011-2022 走看看