[LintCode] Flip Bits

Determine the number of bits required to flip if you want to convert integer n to integer m.

Both n and m are 32-bit integers.

Example

Given n = 31 (11111), m = 14 (01110), return 2.

 

 1 class Solution {
 2     /**
 3      *@param a, b: Two integer
 4      *return: An integer
 5      */
 6     public static int bitSwapRequired(int a, int b) {
 7         int cnt = 0;
 8         for(int i = 0; i < Integer.SIZE; i++){
 9             if(((a >>> i) & 1) != ((b >>> i) & 1)){
10                 cnt++;
11             }
12         }
13         return cnt;
14     }
15 }

 

 

 

 

 

 

 

 

Related Problems 

Rotate Bits - Left

Guess Number Game II

posted @ 2017-11-12 07:13  Review->Improve  阅读(223)  评论(0编辑  收藏  举报