LeetCode 461. 汉明距离

简介: LeetCode 461. 汉明距离

 461. 汉明距离力扣

两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。

给你两个整数 xy,计算并返回它们之间的汉明距离。

示例 1:

输入:x = 1, y = 4

输出:2

解释:

1   (0 0 0 1)

4   (0 1 0 0)

      ↑   ↑

上面的箭头指出了对应二进制位不同的位置。


示例 2:

输入:x = 3, y = 1

输出:1


提示:

    • 0 <= x, y <= 231 - 1


    思路:

      • 先通过 异或^ 得到x和y的 异或^ 结果值 t
      • 再遍历t的每一个位下标,得到位为1的个数


      时间复杂度:O(logC),其中 C是元素的数据范围,在本题中 log⁡C = log⁡2 31 = 31


      空间复杂度:O(1)

      funchammingDistance(xint, yint) int {
      res :=0fort :=x^y; t>0; t=t>>1 {
      res+=t&0x1    }
      returnres}

      image.gif


      目录
      相关文章
      【Leetcode -461.汉明距离 -482.密钥格式化】
      【Leetcode -461.汉明距离 -482.密钥格式化】
      47 0
      |
      3月前
      |
      Python
      【Leetcode刷题Python】461. 汉明距离
      提供了LeetCode题目461的Python编程解决方案,题目要求计算两个整数之间的汉明距离,即它们二进制表示中不同位数的个数。
      20 0
      【Leetcode刷题Python】461. 汉明距离
      |
      6月前
      |
      算法
      leetcode-461:汉明距离
      leetcode-461:汉明距离
      35 0
      |
      算法 Java
      算法打卡Day25_leetcode _461. 汉明距离
      算法打卡Day25_leetcode _461. 汉明距离
      算法打卡Day25_leetcode _461. 汉明距离
      |
      算法 Java
      《LeetCode刷题》—461.汉明距离
      《LeetCode刷题》—461.汉明距离
      107 0
      《LeetCode刷题》—461.汉明距离
      |
      算法 Python
      <LeetCode天梯>Day047 汉明距离(位运算+内置函数) | 初级算法 | Python
      <LeetCode天梯>Day047 汉明距离(位运算+内置函数) | 初级算法 | Python
      <LeetCode天梯>Day047 汉明距离(位运算+内置函数) | 初级算法 | Python
      |
      算法 Java
      【leetcode刷题】15.汉明距离——Java版
      哈喽,大家好,我是一条。 糊涂算法,难得糊涂
      127 0
      【leetcode刷题】15.汉明距离——Java版
      |
      算法
      ​LeetCode刷题实战477:汉明距离总和
      算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
      127 0
      |
      算法
      ​LeetCode刷题实战461:汉明距离
      算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
      97 0
      LeetCode 训练场:461. 汉明距离
      LeetCode 训练场:461. 汉明距离
      106 0