Last updated 5 years ago
Was this helpful?
这个讲解不错
我们要找的其实是前几位相同的部分,这些高位相同的部分都一样,我们放着不管
后面不同的位数,有多少个,就有多少种组合的可能
public class Solution { public int rangeBitwiseAnd(int m, int n) { if (m == 0) return 0; int count = 0; while (m != n) { m >>= 1; n >>= 1; count++; } return m << count; } }