• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

发新话题 回复该主题

[神梦] 【每日一题】汉明距离 - 2022.10.15 [复制链接]

1#
题目描述

两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。
给你两个整数 x 和 y,计算并返回它们之间的汉明距离。
范围:0 <= x, y <= 2^31 - 1

【示例1】
输入:x = 1, y = 4
输出:2
解释:
1 (0 0 0 1)
4 (0 1 0 0)
   ↑  ↑
上面的箭头指出了对应二进制位不同的位置。

【示例2】
输入:x = 3, y = 1
输出:1

题目难度:困难
题目来源:hamming-distance | leetcode
题目交流: 584781753
  1. Import "SmAssert.dll"

  2. Function 汉明距离(x, y)
  3.     // 您的代码写在这里
  4. End Function


  5. SmAssert 汉明距离(1, 4) = 2
  6. SmAssert 汉明距离(3, 1) = 1
  7. SmAssert 汉明距离(4, 2) = 2
  8. SmAssert 汉明距离(4, 14) = 2
  9. SmAssert 汉明距离(14, 2) = 2
复制代码

参考题解

  1. Import "SmAssert.dll"

  2. Function 汉明距离(x, y)
  3.     
  4.     '【作者】:神梦无痕
  5.     '【QQ】:1042207232
  6.     '【Q群】:584781753
  7.     
  8.     Dim z, count
  9.     
  10.     z = x Xor y
  11.     count = 0
  12.     While (z)
  13.         z = z And z - 1
  14.         count = count + 1
  15.     Wend
  16.     汉明距离 = count
  17. End Function


  18. SmAssert 汉明距离(1, 4) = 2
  19. SmAssert 汉明距离(3, 1) = 1
  20. SmAssert 汉明距离(4, 2) = 2
  21. SmAssert 汉明距离(4, 14) = 2
  22. SmAssert 汉明距离(14, 2) = 2
复制代码










插件下载

 
【插件】神梦断言插件 SmAssert.dll,帮助开发者发现业务逻辑错误

最后编辑神梦科技 最后编辑于 2022-10-15 18:03:39
2#

赞一个

3#

谢谢分享

4#

谢谢分享

5#

第一次见新鲜

6#

对对

发新话题 回复该主题