461_Hamming_Distance

た 入场券 2022-06-08 00:52 228阅读 0赞
  1. /*
  2. The Hamming distance between two integers is the number of positions at which the corresponding bits are different.
  3. Given two integers x and y, calculate the Hamming distance.
  4. */
  5. #define max 1010
  6. int hammingDistance(int x, int y) {
  7. int a_x[max]={0},a_y[max]={0};
  8. int i,count=0,x_temp=x,y_temp=y;
  9. for( i = 0 ; x!=0 ; i++)//x十进制转二进制
  10. {
  11. a_x[i] = x % 2;
  12. x = x / 2;
  13. }
  14. for( i = 0 ; y!=0 ; i++)//y十进制转二进制
  15. {
  16. a_y[i] = y % 2;
  17. y = y / 2;
  18. }
  19. for( i = 0 ; x_temp!=0 || y_temp!=0 ; i++ )//判断两个数组每个数字是否一样
  20. {
  21. if( a_x[i] != a_y[i] )
  22. count++;
  23. x_temp = x_temp / 2;
  24. y_temp = y_temp / 2;
  25. }
  26. return count;
  27. }

发表评论

表情:
评论列表 (有 0 条评论,228人围观)

还没有评论,来说两句吧...

相关阅读

    相关 461. 汉明距离

    两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y,计算并返回它们之间的汉明距离。 示例 1: 输入:x = 1,

    相关 461. 汉明距离

    两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y,计算它们之间的汉明距离。 注意: 0 ≤ x, y < 231. 示例