LeetCode 面试经典150题 201.数字范围按位与

题目 :给你两个整数 leftright ,表示区间 [left, right] ,返回此区间内所有数字 按位与 的结果(包含 leftright 端点)。

提示:0 <= left <= right <= 2^31 - 1

思路

位与的特性 :只要参与位与的元素有一个为 0,那么位与结果就为 0。换句话说,如果参与位与的元素都相同,位与结果就是这个相同元素。

代码

java 复制代码
class Solution {
    public int rangeBitwiseAnd(int left, int right) {
        int count = 0;  // 记录右移次数
        while (left != right) {
            count++;
            left >>= 1;
            right >>= 1;
        }
        return left <<= count;  // 左移
    }
}

性能

相关推荐
程序员雷欧3 小时前
大厂计算机网络面试高频题
计算机网络·面试·职场和发展
鱼很腾apoc5 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
JAVA学习通6 小时前
美团AI面试 实习一面面经
面试·职场和发展
小许同学记录成长7 小时前
三维重建技术文档
算法·无人机
卷帘依旧7 小时前
怎么保证AI生成的代码是符合预期的
面试
卷帘依旧7 小时前
RAG(Retrieval-Augmented Generation)完全指南(deepseek生成)
面试
卷帘依旧7 小时前
知识切分与维护相关知识介绍
面试
卷帘依旧7 小时前
RAG 的设计问题与局限性分析
面试
小为资料库8 小时前
2026年5月16日教资面试真题汇总(中小幼各科全)
面试·职场和发展