我正在研究一种在二进制数中查找尾随零数的方法,并在C(link)中找到了一种解决方案。我正在寻找Python的解决方案
Binary Input -> 1000
Output: 3
Binary Input -> 101101001100
Output: 2
Binary Input -> 1010001010000
Output: 4
Binary Input -> 100000001
Output: 0
有没有一种有效的方法可以在不将二进制数作为字符串进行迭代或使用字符串方法进行过滤的情况下执行此操作?基本上,我可能有大量非常非常大的二进制数,所以我试图找到比简单地将其作为字符串进行迭代更有效的方法
编辑:
这是我的尝试-
def trailingzeros(l):
count = 0
a = [i for i in str(l)]
for i in reversed(a):
if i=='0':
count+=1
else:
break
return count
注意:我正在寻找一种利用输入的二进制特性的解决方案
您可以使用python位运算符:
印刷品:
相关问题 更多 >
编程相关推荐