首页 > 学院 > 开发设计 > 正文

LeetCode_461-hamming distance

2019-11-06 07:43:15
字体:
来源:转载
供稿:网友

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;    }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表