15. 二進制中1的個數,位運算

15. 二進制中1的個數

image.png

補充:

  • Java的位運算符:html

    • 位邏輯運算符:
      與 &,或 |,非 ~,抑或 ^
      其中抑或的含義:若是對應的二進制位相同(同時爲 0 或同時爲 1)時,結果爲 0;若是對應的二進制位不相同,結果則爲 1。
    • 位移運算符
      一、左移<<,低位補零
      二、帶符號右移>>,高位補符號
      image.png
      三、無符號右移>>>,高位補零
      image.png
引用:
Java語言位運算符詳解
Java位運算符:Java移位運算符、複合位賦值運算符及位邏輯運算符

思路:

輸入爲二進制數,應該使用位運算。而不是把它當作一個很大的十進制數(個人IDEA把它當作了一個十進制...)
一、n&1,等於1 就res+1
二、n向右移1位spa

操做:

image.png
官方:
一、循環:while(n!=0) 更快
二、res = res + n&1;
image.png.net

相關文章
相關標籤/搜索