Leetcode 461. 汉明距离

461. 汉明距离 - 力扣(LeetCode) (leetcode-cn.com)

 

 

思路 1 使用内置方法:

 

 

 

func hammingDistance(x int, y int) int {
    return bits.OnesCount(uint(x^y))
}

 

思路 2 自己实现功能

1. x^y之后,检查结果最后一位是不是1

2. 如果最后一位是1,result+1

3. 结果整体后移一位

func hammingDistance(x int, y int) int {
	s := x ^ y
	var result int
	for s > 0 {
		result += s & 1
		s >>= 1
	}
	return result
}

  

posted @ 2022-04-26 02:24  SoutherLea  阅读(11)  评论(0编辑  收藏  举报