首页 > 代码库 > Bit Manipulation

Bit Manipulation

转自:http://blog.csdn.net/xsloop/article/details/47006241

一共五中运算: 与,或,异或,左移,右移

 

常用技巧:
(1)n & (n-1)能够消灭n中最右侧的一个1。
(2) 右移:除以2, 左移:乘以2。
(3)异或性质:交换律,0^a=a, a^a=0;
(3)将常用字符、数字等均转为按位运算,可以节约空间。
 
leetcode 题目解析:
191  Number of 1 Bits 
  1. 使用右移。
  2. 使用n&(n-1)可以消灭一个1的性质来求解

231 Power of Two  

      使用n&(n-1)=0来判断。
                注意0和负数的情况。
 
 190 Reverse Bits  
      使用右移和左移。
 
  169 Majority Element 
      
  136 Single Number 
 
 137 Single Number II
 
   78  Subsets 
 
   201 Bitwise AND of Numbers Range 
 
 187 Repeated DNA Sequences 
 
 
 
 

Bit Manipulation