leetcode做题笔记231. 2 的幂

给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false

如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。

示例 1:

复制代码
输入:n = 1
输出:true
解释:20 = 1

示例 2:

复制代码
输入:n = 16
输出:true
解释:24 = 16

示例 3:

复制代码
输入:n = 3
输出:false

示例 4:

复制代码
输入:n = 4
输出:true

示例 5:

复制代码
输入:n = 5
输出:false

思路一:模拟题意

c++解法

cpp 复制代码
class Solution {
public:
    bool isPowerOfTwo(int n) {
        long long nn = n;
        if (nn == 0) return 0;
        return (nn & (nn - 1)) == 0;

    }
};
相关推荐
什巳1 分钟前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
Jerry29 分钟前
LeetCode 347. 前 K 个高频元素
算法
Young Doro1 小时前
SAC 算法
线性代数·算法·机器学习
罗超驿1 小时前
2.算法效率的核心密码:时间复杂度和空间复杂度详解
java·数据结构·算法
:-)2 小时前
算法-堆排序
数据结构·算法·排序算法
栈溢出了2 小时前
Redis 分片集群与哈希槽笔记
java·redis·笔记·spring
星马梦缘2 小时前
算法设计 期末复习笔记
算法·动态规划·二分图·最小生成树·线性规划·最大流
我命由我123452 小时前
复利极简理解
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
鱼儿也有烦恼3 小时前
快速学完 LeetCode top 1~50
leetcode·algorithm