LeetCode - 461. Hamming Distance
2017-02-24 16:39
344 查看
解题代码:
inthammingDistance(int x, int y) {
int a=x^y;
int b=0;
for(;a>0;){
if(a%2==1)
b++;
a/=2;
}
return b;
}
解题思路:
题目要求计算两个数字的Hamming Distance,首先两个等长字符串之间的Hamming Distance是两个字符串对应位置的不同字符的个数。换句话说,它就是将一个字符串变换成另外一个字符串所需要替换的字符个数。而计算两个数字的Hamming Distance就是要计算这两个数字在二进制状态下不同的位的个数。
因此首先对两个数字进行异或计算,然后对于异或的结果,计算出里面位是1的个数,即可得出上题目中两个数的Hamming Distance。
inthammingDistance(int x, int y) {
int a=x^y;
int b=0;
for(;a>0;){
if(a%2==1)
b++;
a/=2;
}
return b;
}
解题思路:
题目要求计算两个数字的Hamming Distance,首先两个等长字符串之间的Hamming Distance是两个字符串对应位置的不同字符的个数。换句话说,它就是将一个字符串变换成另外一个字符串所需要替换的字符个数。而计算两个数字的Hamming Distance就是要计算这两个数字在二进制状态下不同的位的个数。
因此首先对两个数字进行异或计算,然后对于异或的结果,计算出里面位是1的个数,即可得出上题目中两个数的Hamming Distance。
相关文章推荐
- LeetCode | 461. Hamming Distance 12_16
- 【LeetCode】(C#)461. Hamming Distance(Easy)
- leetcode 461. Hamming Distance(C语言)
- [LeetCode] 461. Hamming Distance 汉明距离
- leetcode----461. Hamming Distance
- LeetCode - 461. Hamming Distance
- 【leetcode】【Easy】【461. Hamming Distance】【bit manipulation】
- LeetCode之461. Hamming Distance
- 【LeetCode】461. Hamming Distance (java实现)
- 【Leetcode】461. Hamming Distance
- 【LeetCode】461. Hamming Distance
- leetcode 461. Hamming Distance
- LeetCode 461. Hamming Distance(java)
- python--leetcode 461. Hamming Distance
- LeetCode 461. Hamming Distance
- LeetCode-461. Hamming Distance
- [Leetcode从零开刷]461. Hamming Distance
- Leetcode 461. Hamming Distance
- LeetCode之461. Hamming Distance
- LeetCode 461. Hamming Distance