How to count the number of bits to be flipped to convert N1 to N2 in TypeScript

1 Answer

0 votes
function flipped_count(a: number, b: number) {
    let n = a ^ b;
    let count = 0;
           
    while (n > 0) {
         count++;
         n &= (n - 1);
    }
    return count;
}
 
         
const a = 7, b = 10;
           
console.log("a = " + "0000".substr(a.toString(2).length) + a.toString(2));
console.log("b = " + b.toString(2));
console.log("a ^ b = " + (a ^ b).toString(2));
           
console.log(flipped_count(a, b));
 
  
   
   
   
/*
run:
    
"a = 0111"
"b = 1010"
"a ^ b = 1101"
3
    
*/

 



answered Dec 28, 2021 by avibootz
...