您的位置:首页 > 编程语言 > Python开发

剑指offer-10-Python实现(二进制中1的个数)

2017-09-06 21:46 323 查看
题目内容:



解答思路:

把一个整数减去1,再和原来的整数做位与运算,会把该整数最右边一个1变成0.也就是说,一个整数的二进制有多少个1,就可以完成多少次这样的操作。

可以写出代码:

def func(n):
cnt = 0
while n:
n = (n-1)&n
cnt +=1
return cnt

print  func(13)

#output:3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 二进制