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

性能

相关推荐
多多*1 分钟前
分布式系统中的CAP理论和BASE理论
java·数据结构·算法·log4j·maven
yuan199978 分钟前
基于粒子群优化(PSO)算法的PID控制器参数整定
算法
小白程序员成长日记39 分钟前
2025.11.10 力扣每日一题
数据结构·算法·leetcode
hoiii1871 小时前
基于交替方向乘子法(ADMM)的RPCA MATLAB实现
人工智能·算法·matlab
fengfuyao9851 小时前
MATLAB的加权K-means(Warp-KMeans)聚类算法
算法·matlab·kmeans
循环过三天2 小时前
3.1、Python-列表
python·算法
han_2 小时前
前端高频面试题之Vue(初、中级篇)
前端·vue.js·面试
dragoooon343 小时前
[优选算法专题六.模拟 ——NO.40~41 外观数列、数青蛙]
数据结构·算法·leetcode
掘金安东尼3 小时前
TypeScript为何在AI时代登顶:Anders Hejlsberg 的十二年演化论
前端·javascript·面试
徐新帅3 小时前
CCF-GESP 等级考试 2025年3月认证C++一级真题解析
算法