美文网首页
如果要将整数A转换为B,需要改变多少个bit位?

如果要将整数A转换为B,需要改变多少个bit位?

作者: Awanwan | 来源:发表于2017-08-29 15:43 被阅读8次

问题:如果要将整数A转换为B,需要改变多少个bit位?

样例
如把31转换为14,需要改变2个bit位。
(31)10=(11111)2
(14)10=(01110)2

    public static int bitSwapRequired(int a, int b) {
        int count = 0;
        for (int num = a ^ b; num != 0; num >>>= 1) {

            int i = num & 1;
            System.out.println("num=" + num + "&1=" + i);
            count += i;
        }
        return count;
    }

相关文章

网友评论

      本文标题:如果要将整数A转换为B,需要改变多少个bit位?

      本文链接:https://www.haomeiwen.com/subject/scnodxtx.html