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;  // 左移
    }
}

性能

相关推荐
203号居民1 小时前
LeetCode hot 100 — 25. K 个一组翻转链表
算法·leetcode·链表
ocean21032 小时前
2025-2026年AI算法与模型研发面试高频知识点洞察
人工智能·算法·面试
Nil2082 小时前
leetcode 78子集
数据结构·算法·leetcode
en.en..3 小时前
Linux fork() 工作原理
数据结构·算法
地平线开发者4 小时前
bevformer算法模型详细解读
算法
liliangcsdn4 小时前
ICIR权重矩阵如何加权标准化为综合因子
算法
ShineWinsu4 小时前
对于MySQL:数据库的操作的解析
linux·数据库·c++·mysql·面试·笔试·库的操作
黄敬峰4 小时前
一文搞懂 LLM 结构化输出:从"抠 JSON"到"吐 JSON"的进化之路
面试
SDWAN_Cheap5 小时前
SD-WAN智能选路技术的算法与实现机制
算法·php·sdwan
不会就选b5 小时前
数据结构之树&&二叉树(二)
数据结构·算法