您的位置:首页 > 其它

LeetCode_461-hamming distance

2017-03-04 14:14 423 查看
Solution one:

思路:按位与直接比较

 int hammingDistance(int x, int y) {

       int c = 0;

       for(int i = 32;i>=0;i--){

           if((x & (1<<i)) != (y & (1<<i))){

               c++;

           }

       }

        return c;

    }

Solution two:

思路:求出x与y的异或,再求出其二进制中的非零值

int hammingDistance(int x, int y) {

        int c = 0,d=x^y;

        while(d){

            if(d%2)

            {

                c++;

            }

            d = d/2;

         }

     

        return c;

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: