LeetCode 191 位1的個數

2022-06-13 17:54:09 字數 1456 閱讀 2057

問題描述:

編寫乙個函式,輸入是乙個無符號整數,返回其二進位制表示式中數字位數為 『1』 的個數(也被稱為漢明重量)。

示例 :

輸入:11輸出:3解釋:整數 11 的二進位制表示為00000000000000000000000000001011
示例 2:

輸入:128輸出:1解釋:整數 128 的二進位制表示為00000000000000000000000010000000
方法1:

1

class

solution(object):

2def

hammingweight(self, n):

3"""

4:type n: int

5:rtype: int

6"""

7 str_b =str(bin(n))

8return str_b.count('

1')

直接可以

return bin(n).count('1')

官方:

1

class

solution(object):

2def

hammingweight(self, n):

3"""

4:type n: int

5:rtype: int

6"""

7 new_n = bin(n)[2:].zfill(31)

8 new_n =list(new_n)

9return new_n.count('

1')

在這裡只是提一下zfill函式

python zfill() 方法返回指定長度的字串,原字串右對齊,前面填充0。

zfill()方法語法:

str.zfill(width)

返回指定長度的字串。

以下例項展示了 zfill()函式的使用方法:

#!/usr/bin/pythonstr ="this is string example....wow!!!";printstr.zfill(40);printstr.zfill(50);

以上例項輸出結果如下:

00000000thisisstringexample....wow!!!000000000000000000thisisstringexample....wow!!!

2018-09-16 09:17:03

Leetcode191 位1的個數

題目 編寫乙個函式,輸入是乙個無符號整數,返回其二進位制表示式中數字位數為 1 的個數 也被稱為漢明重量 輸入 11111111111111111111111111111101 輸出 31 解釋 輸入的二進位制串 11111111111111111111111111111101 中,共有 31 位為...

LeetCode 191 位1的個數

題意 編寫乙個函式,輸入是乙個無符號整數,返回其二進位制表示式中數字位數為 1 的個數 也被稱為漢明重量 lowbit n 定義為非負整數 n nn 在二進位制表示下最低位的 1 11 及其後邊所有的 0 00 構成的數值。方法一 n n 1 作用 將 n nn 的二進位制表示中最低位的 1 11 ...

LeetCode191 位1的個數

編寫乙個函式,輸入是乙個無符號整數,返回其二進位制表示式中數字位數為 1 的個數 也被稱為漢明重量 輸入 00000000000000000000000000001011 輸出 3 解釋 輸入的二進位制串 00000000000000000000000000001011 中,共有三位為 1 輸入 0...