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

性能

相关推荐
NAGNIP8 分钟前
面试官:为什么需要量化,为什么 int4 _ int8 量化后大模型仍能保持性能?
算法
gihigo199815 分钟前
基于单亲遗传算法的汽车路径规划实现
算法·汽车
xiaoxue..19 分钟前
单向数据流不迷路:用 Todos 项目吃透 React 通信机制
前端·react.js·面试·前端框架
Wang2012201319 分钟前
AI各个领域适用的大模型介绍和适配的算法
人工智能·算法
阿拉伯柠檬25 分钟前
MySQL基本查询
linux·数据库·mysql·面试
Yzzz-F27 分钟前
CF GYM105316A DP
数据结构·算法
智算菩萨36 分钟前
迷宫生成算法:从生成树到均匀随机,再到工程化 Python 实现
python·算法·游戏
醒过来摸鱼38 分钟前
《线性空间》专栏写作计划(目录)
算法
C雨后彩虹39 分钟前
幼儿园分班
java·数据结构·算法·华为·面试
Yupureki42 分钟前
《算法竞赛从入门到国奖》算法基础:入门篇-二分算法
c语言·开发语言·数据结构·c++·算法·visual studio