博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 461. Hamming Distance
阅读量:6657 次
发布时间:2019-06-25

本文共 784 字,大约阅读时间需要 2 分钟。

The  between two integers is the number of positions at which the corresponding bits are different.

Given two integers x and y, calculate the Hamming distance.

Note:

0 ≤ xy < 231.

Example:

Input: x = 1, y = 4Output: 2Explanation:1   (0 0 0 1)4   (0 1 0 0)       ↑   ↑The above arrows point to positions where the corresponding bits are different. 思路: 汉明距离就是求相对应二进制位数之间不同的位数。由此很容易想到异或操作符^ (相同位得0,不同位得1)。 之后,只需要统计异或得到的结果中二进制中1的位数即可。 统计结果中二进制位中1的个数思路是:与1进行安慰与,如果所得结果为1,那么证实二进制位为1. 然后将结果右移一位继续循环,直到结果为0为止。 代码如下:
function hanming(x, y) {    var num = x ^ y;    var result = 0;    while ( num > 0) {        if(num & 1) {            result++;        }        num = num >> 1;    }    return result;    }var a  = hanming(1,4);console.log(a);

 

转载于:https://www.cnblogs.com/gogolee/p/6642206.html

你可能感兴趣的文章
Java 字节流和字符流练习
查看>>
C++面向对象的编程(二)
查看>>
[C# 网络编程系列]专题九:实现类似QQ的即时通信程序
查看>>
希尔瓦娜斯·风行者
查看>>
GC之三--GC是如何回收时的判断依据、shallow size、retained size--删除
查看>>
领域驱动设计(DDD)技术分享
查看>>
删除数据Jquery post 传递数组方法 asp.net mvc
查看>>
opencv 2 computer vision application programming第五章翻译
查看>>
动态规划---->可靠性设计
查看>>
hdu 1300
查看>>
C# 特性(attribute)
查看>>
在jsp中出现异常后应该停止往下执行的情况,怎么处理?
查看>>
文章的点击访问怎样实现统计
查看>>
springMVC3学习(二)--ModelAndView对象
查看>>
JAVA静态导入(inport static)详解
查看>>
修改Android模拟器的system分区,以及加入SuperSU
查看>>
Could not load file or assembly 'Microsoft.Office.Interop.Word, Version=14.0
查看>>
键盘中断事件及其相关---小记
查看>>
锁sql server锁
查看>>
Java序列化技术与Protobuff
查看>>