Bit*_*ker 10 c c# c++ algorithm
假设我有两个正数a和b.为了将a转换为b,必须反转多少位?我只想要计数而不是不同位的确切位置.
假设a = 10(1010)且b = 8(1000).在这种情况下,应该反转的位数等于1.
任何通用算法?
Pra*_*rav 25
解决方案很简单
完成!
Ita*_*aro 7
int a = 10; int b = 8; int c = a ^ b; //xor int count = 0; while (c != 0) { if ((c & 1) != 0) count++; c = c >> 1; } return count;
归档时间:
14 年,7 月 前
查看次数:
1943 次
最近记录: