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-03
    正则表达式
    文件下载
    Shiro笔记
    MyBatis笔记
    Spring5笔记
    JavaScript笔记
    smartsvn安装和使用 —— svn工具linux版
    网易云歌单导入qq音乐
    svn版本回滚 —— svn使用笔记之三
  • 原文地址:https://www.cnblogs.com/sarahp/p/6686659.html
Copyright © 2011-2022 走看看