zoukankan      html  css  js  c++  java
  • 6.Hamming Distance

    Description:

    The Hamming distance 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.

    百度了一下汉明距离的定义:对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。

    解题思路:

      直接对x, y进行异或运算,若结果不为0,意味着数字(转换成二进制数值)对应位置的数字不一样,距离加1。随后对运算结果与运算结果减1后的数值进行“与”运算,将对应位置的不同数值置0,重复该过程,直至n=0

    代码如下:

    class Solution {
    public:
        int hammingDistance(int x, int y) {
            int dist=0,n=x^y;
            while(n){
                ++dist;
                n&=n-1;  
            }
            return dist;
        }
    };

  • 相关阅读:
    jQuery 选择器 与 事件
    JavaScript 语法
    Java 包(package)
    Java 接口
    java封装继承多态---继承篇
    Java数组的学习
    java基础周总结
    JAVA基础接口集合框架
    周总结
    Java基础
  • 原文地址:https://www.cnblogs.com/sarahp/p/6686659.html
Copyright © 2011-2022 走看看