当前位置: 首页 > news >正文

LeetCode 汉明距离题解

LeetCode 汉明距离题解

题目描述

给定两个整数 x 和 y,计算汉明距离,即两个数字对应二进制位不同的位置的数目。

示例

输入:x = 1,y = 4
输出:2

解题思路

方法:位运算

思路

  • 使用位运算来解决这个问题。
  • 将 x 和 y 进行异或运算,结果中 1 的个数就是汉明距离。
  • 使用 Brian Kernighan 算法计算异或结果中 1 的个数。

复杂度分析

  • 时间复杂度:O(k),其中 k 是整数的位数。
  • 空间复杂度:O(1)。

代码实现

方法:位运算

# 汉明距离(位运算)defhamming_distance(x,y):xor=x^y count=0whilexor:xor&=(xor-1)count+=1returncount# 测试deftest_hamming_distance():x=1y=4print(hamming_distance(x,y))# 输出:2x=3y=0print(hamming_distance(x,y))# 输出:2if__name__=="__main__":test_hamming_distance()

测试用例

测试用例 1:基本情况

输入:x = 1,y = 4
输出:2

测试用例 2:另一个例子

输入:x = 3,y = 0
输出:2

总结

汉明距离是一个经典的位运算问题,它可以通过位运算来高效地解决。

位运算的核心思想是:将 x 和 y 进行异或运算,结果中 1 的个数就是汉明距离。

掌握位运算的使用方法,对于解决类似的问题非常重要。

http://www.jsqmd.com/news/794088/

相关文章:

  • 【AI原生MLOps实战白皮书】:2026奇点大会首发的7大不可复制落地范式,仅限前500位技术决策者获取
  • 物联网标准演进与云平台破局:从M2M到IoT的实战路径
  • 半导体设备再流通:破解成熟制程产能瓶颈与供应链韧性难题
  • 半导体并购新趋势:从规模扩张到价值重构的三大模式解析
  • DevSquad:基于Docker Compose的一站式开发环境解决方案
  • Docker 容器使用指南
  • 栅极后置工艺如何为FDSOI带来颠覆性性能提升?
  • 《Java面试85题图解版(二)》进阶深化中篇:Spring核心 + 数据库进阶
  • 产业公地与紧密设计链:制造业创新效率与供应链韧性的核心
  • turtle学习中的问题
  • 从零部署私有化AI对话框架:igogpt架构解析与实战指南
  • 芯粒技术:从封装协同到UCIe标准,破解芯片设计新范式
  • 从96%本土专利看中国创新转型:成本、策略与全球布局博弈
  • 从CEO到营销技术专家:创业者退休后的身份重构与价值延续
  • 2026 AI技术大会签到暗藏“身份熵阈值”规则,超限即触发人工复核——99.3%参会者不知的3个降熵技巧
  • 400GbE以太网标准:从技术博弈到产业落地的深度解析
  • 二进制喷漆问题:量子与经典优化算法对比
  • Cursor IDE AI用量监控插件开发实战:从需求到开源实现
  • CES 2016行业转向:从酷炫到实用,安全与服务成核心
  • iPhone 5c中国遇冷复盘:产品定价、市场预期与战略博弈的深度解析
  • 福特自动驾驶测试车:机器人如何革新汽车耐久性测试
  • 番茄小说下载器:打造个人专属离线小说图书馆的完整指南
  • 虚拟原型技术:软硬件协同开发与多核处理器调试新范式
  • 优先级反转与互斥锁:实时系统资源争用解决方案
  • 半导体产业权力博弈:从专利诉讼到后摩尔时代的创新路径
  • 工程师如何构建高效个人知识库:从信息管理到生产力提升
  • DSMR模型:分层记忆调度优化音乐生成
  • 太阳能产业竞争逻辑:从晶硅技术统治到创业生存法则
  • ClawMorph:为OpenClaw AI智能体实现安全可逆的“一键换装”
  • 芯片设计中的工程迷信与理性实践:从经验法则到数据驱动