LeetCode 3370.仅含置位位的最小整数

题目

给你一个正整数 n

返回 大于等于 n 且二进制表示仅包含 置位 位的 最小 整数 x 。(全是1)

置位 位指的是二进制表示中值为 1 的位。

思路:计算 n 的二进制长度 m,返回长为 m 的全为 1 的二进制数,也就是2^m−1

代码

java 复制代码
class Solution {
    public int smallestNumber(int n) {
        int m = 32 - Integer.numberOfLeadingZeros(n);
        // 1 左移 m 位,相当于 1 * 2^m
        return (1 << m) - 1;
    }
}

性能

时间复杂度:O(1)

空间复杂度:O(1)

相关推荐
飞Link5 小时前
动作方法中的分割与过度分割方法全解析(含代码实战与踩坑案例)
人工智能·python·算法·计算机视觉
张宇Joaquin6 小时前
鲲鹏统一并行加速库KUPL--异步数据拷贝
线性代数·算法·矩阵·numpy
GlobalInfo6 小时前
创新不是追逐热点,是在变化中建立长期竞争力
大数据·算法
lvwangshu6 小时前
线性代数基础 Linear Algebra Basics
数学·算法
ZhouDevin6 小时前
算法论文/数据集5——AlignPrune(CVPR2026)基于样本损失时间序列精确识别噪声样本
算法
十铭忘7 小时前
HMM(隐马尔可夫模型)的理解7——Baum–Welch 算法
人工智能·算法
明月_清风8 小时前
十大经典排序算法 Go 实现全解:从入门到面试通关
后端·算法·排序算法
liliangcsdn8 小时前
如何对IC时间序列进行汇总统计分析示例
人工智能·算法·机器学习
土司大王8 小时前
LeetCode hot100——缺失的第一个正数
数据结构·算法·leetcode
Cccp.1238 小时前
【leetcode】(二)认识O(NlogN)的排序
算法·leetcode