201. Bitwise AND of Numbers Range
Input: [5,7]
Output: 4Input: [0,1]
Output: 0int rangeBitwiseAnd(int m, int n) { // time: O(1); space: O(1)
while (n > m) {
n &= (n - 1);
}
return n;
}int rangeBitwiseAnd(int m, int n) { // time: O(1); space: O(1)
int i = 0;
while (m != n) {
m >>= 1;
n >>= 1;
++i;
}
return m << i;
}Last updated