当前位置: 首页 > 图灵资讯 > 技术篇> #yyds干货盘点# LeetCode程序员面试金典:数字范围按位与

#yyds干货盘点# LeetCode程序员面试金典:数字范围按位与

来源:图灵教育
时间:2023-06-09 10:11:48

1.简述:

给你两个整数 left 和 right ,表示区间 [left, right] ,返回此范围内的所有数字 按位与 结果(包括 left 、right 端点)。

示例 1:

输入:left = 5, right = 7

输出:4

示例 2:

输入:left = 0, right = 0

输出:0

示例 3:

输入:left = 1, right = 2147483647

输出:0

2.实现代码:

class Solution {    public int rangeBitwiseAnd(int m, int n) {        int shift = 0;        // 找到公共前缀        while (m < n) {            m >>= 1;            n >>= 1;            ++shift;        }        return m << shift;    }}