位操作 (Bit Manipulation)#

位操作是直接對二進位位進行的運算,在演算法優化和底層開發中極為重要。

為什麼要學習位操作?#

計算機底層完全基於二進位運算,直接使用位操作能:

  • 避免進位制轉換開銷
  • 執行速度極快(硬體原生支援)
  • 節省記憶體空間

章節概覽#

主題內容
位操作基礎基本運算符、常用技巧、經典公式
位操作應用Hamming Weight、2 的冪次、N 皇后優化

常用位運算符速查#

運算符名稱規則
&AND兩位都為 1 才為 1
|OR有一位為 1 就為 1
^XOR相異為 1,相同為 0
~NOT0 變 1,1 變 0
<<左移左移 n 位 = 乘以 2^n
>>右移右移 n 位 = 除以 2^n

熟記三個核心技巧:

  • x & 1:判斷奇偶
  • x & (x-1):清除最低位的 1
  • x & -x:取得最低位的 1