8 二進制中1的個數:請實現一個函數,輸入一個整數,輸出該數二進制表示中1的個數

1、題目 請實現一個函數,輸入一個整數,輸出該數二進制表示中1的個數。例如把9表示成二進制1001,有2位1。所以若是輸入9,該函數輸出2。 2、解題思路 ①位移+計數 每次右移一位,不斷和1進行與運算,直到位0。 ②循環讓(n - 1) & n。若是n的二進制表示中有k個1,那麼這個方法只須要循環k次便可。其原理是不斷清除n的二進制表示中最右邊的1,同時累加計數器,直至n爲0。由於從二進制的角度
相關文章
相關標籤/搜索