zoukankan      html  css  js  c++  java
  • 汉明距

     1 //汉明距离——用位运算 
     2 #include<iostream>
     3 using namespace std;
     4 
     5 int hammingDistance(int x, int y) {
     6         //将x与y进行异或运算,在进行循环与操作,不为0,则result++;
     7         int result=0;
     8         int a;
     9         a= x ^ y;//异或运算 
    10         for(int i=0;i<32;i++){
    11            if((a & 1 )!=0){
    12              result++;
    13                 } 
    14             a>>= 1;//判断一位,a向右移一位;
    15             }
    16         return result;
    17     }
    18 int main()
    19 {
    20     int a,b,y;
    21     //a=2,b=1 
    22     cin>>a>>b;
    23     y = hammingDistance(a,b);
    24     cout<<y<<endl;
    25     return 0;
    26     }    

    2的二进制:10

    1的二进制:01

    汉明距为不同值的总和数。为2

    转载请说明出处!
  • 相关阅读:
    基本HAL库操作函数整理
    oled(iic协议)
    Uart串口中断收发
    博主回来啦
    博主的冒泡1
    AFO

    起床困难综合症
    费解的开关
    数独
  • 原文地址:https://www.cnblogs.com/zengshangzhi/p/8779656.html
Copyright © 2011-2022 走看看