编写一个函数,接收一个无符号整数,返回它拥有的“1”位数(也称为汉明权重,Hamming weight)。
例如,32 位整数 '11' 的二进制表示为 00000000000000000000000000001011
,所以函数应该返回3。
// hammingWeight 计算 Hamming weight
func hammingWeight(n uint32) int {
}
有疑问加站长微信联系(非本文作者)

编写一个函数,接收一个无符号整数,返回它拥有的“1”位数(也称为汉明权重,Hamming weight)。
例如,32 位整数 '11' 的二进制表示为 00000000000000000000000000001011
,所以函数应该返回3。
// hammingWeight 计算 Hamming weight
func hammingWeight(n uint32) int {
}
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
`单行代码`
func hammingWeight(n uint32) int { str := strconv.FormatInt(int64(n), 10) v := strings.Count(str, "1") return v }
func hammingWeight(n uint32) int { str := strconv.FormatInt(int64(n), 10) v := strings.Count(str, "1") return v }
二进制把那个10改成2