尋找給定數字中二進位制 1 位數的 Python 程式


假設我們有一個數 n,我們必須找到該數的二進位制表示形式中存在的二進位制位 1 的數量。

因此,如果輸入類似於 12,則輸出將為 2

為解決此問題,我們將按照以下步驟操作 -

  • count := 0
  • 當 n 不為零時,執行
    • count := count + (n AND 1)
    • n := (n / 2) 的向下舍入
  • 返回 count

讓我們看看以下實現以獲得更好的理解 -

示例

 即時演示

class Solution:
   def solve(self, n):
      count = 0
      while (n):
         count += n & 1
         n >>= 1
      return count
ob = Solution()
print(ob.solve(12))

輸入

12

輸出

2

更新日期:2020 年 10 月 6 日

93 次瀏覽

職業開端

完成課程,獲得認證

開始
廣告