1. 程式人生 > 其它 >Day7 二進位制中1的個數【再刷】

Day7 二進位制中1的個數【再刷】

技術標籤:劍指offer

題目:
請實現一個函式,輸入一個整數(以二進位制串形式),輸出該數二進位制表示中 1 的個數。例如,把 9 表示成二進位制是 1001,有 2 位是 1。因此,如果輸入 9,則該函式輸出 2。
leetcode原題連結

思路:
利用python的bin()函式和count()方法

  • bin() 返回一個整數 int 或者長整數 long int 的二進位制表示,返回值是字串物件。
  • count() 方法用於統計字串裡某個字元出現的次數。可選引數為在字串搜尋的開始與結束位置。

程式碼:
取巧了,python內建函式和方法太好用了qwq,有待優化/思考

class Solution
: def hammingWeight(self, n: int) -> int: return bin(n).count('1')

在這裡插入圖片描述