剑指offer第11题(二进制中1的个数)

xiaoxiao2021-02-27  235

题目:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

java思路:将整数转换为二进制数,而且返回值是字符串参数,将里面的0替代为什么都没有,再算字符串的长度即可。

java代码:

public class Solution {     public int NumberOf1(int n) {         return Integer.toBinaryString(n).replaceAll("0", "").length();     } } python思路:

&之后,看哪些位是1

python代码:

# -*- coding:utf-8 -*- class Solution:     def NumberOf1(self, n):         return sum([(n>>i & 1)for i in range(0,32)])

转载请注明原文地址: https://www.6miu.com/read-12486.html

最新回复(0)