##題目描述 輸入一個整數,輸出該數二進制表示中1的個數,其中負數用補碼表示,
思路
時間復雜度O(n),空間復雜度O(1),
代碼
public class Solution {
public int NumberOf1(int n) {
int count = 0;
while(n != 0) {
count++;
n &= n-1;
}
return count;
}
}
筆記
n&n-1作用是將n最后一位1變成0,類似樹狀陣列的lowbit,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/86923.html
標籤:其他
上一篇:什么是哈希表?
下一篇:數值的整數次方
