leetcode上的一个简单题目
求两个整型数 的 二进制的差异位数
例如 3(0011),5(0101)
差异的位数为 0011 两位
0101
解决方法,就是 C = A ^ B,再求C的二进制中1的数量
int C = A ^ B;
int n = 0;
while (C) {
n++;
C = C & (C-1);
}
本文介绍了一个简单的LeetCode题目解决方案:计算两个整数在二进制表示下的差异位数。通过使用异或运算符找出不同位,并计算这些位的数量。
leetcode上的一个简单题目
求两个整型数 的 二进制的差异位数
例如 3(0011),5(0101)
差异的位数为 0011 两位
0101
解决方法,就是 C = A ^ B,再求C的二进制中1的数量
int C = A ^ B;
int n = 0;
while (C) {
n++;
C = C & (C-1);
}
454
109
401

被折叠的 条评论
为什么被折叠?