当前位置: 首页 > news >正文

闯关leetcode——231. Power of Two

大纲

  • 题目
    • 地址
    • 内容
  • 解题
    • 代码地址

题目

地址

https://leetcode.com/problems/power-of-two/description/

内容

Given an integer n, return true if it is a power of two. Otherwise, return false.
An integer n is a power of two, if there exists an integer x such that n == 2x.

Example 1:

Input: n = 1
Output: true
Explanation: 20 = 1

Example 2:

Input: n = 16
Output: true
Explanation: 24 = 16

Example 3:

Input: n = 3
Output: false

Constraints:

  • -231 <= n <= 231-1

解题

这题就是要检测一个数是否是2的幂次方。

对这个数,我们要拆分来看。

如果它小于或者等于0,则它一定不是2的幂次方;

如果它大于0,则需要它的二进制中(除了标志位)只能有一个1,比如2的二进制是0x10、4的二进制是0x100、8的二进制是0x1000。检测只有1个1的最简单方法是n&(n-1)等于0。
在这里插入图片描述

代码地址

https://github.com/f304646673/leetcode/blob/main/231-Power-of-Two/cplusplus/src/solution.hpp


http://www.mrgr.cn/news/63001.html

相关文章:

  • 【AI开源项目】FastGPT- 快速部署FastGPT以及使用知识库的两种方式!
  • 港岛迎火箭,斯诺克新天。文化交融处,情谊续前缘。
  • AI产品经理岗,面试了个211女孩,真的不错
  • C++标准模板库--栈和队列
  • 【AAOS】【源码分析】CarSystemUI -- CarSystemBar
  • Android R S T U版本如何在下拉栏菜单增加基本截图功能
  • Android 刘海屏适配指南
  • [C++]unordered_map和unordered_set的模拟实现
  • vim命令及shell命令
  • cdp(Chrome DevTools)检测分析
  • 基于MPC控制器的混合动力EMS能量管理系统simulink建模与仿真
  • 线程的状态及其查看
  • 入门 | Kafka数据使用vector消费到Loki中使用grafana展示
  • 【Canal 中间件】Canal使用原理与基本组件概述
  • 优雅的LUA数据记录方法-serpent序列化+LUA Table
  • 2023 年 Github 万圣节彩蛋
  • windows C#-类型系统(下)
  • NLP segment-01-聊一聊分词 AI 的基础
  • street gaussion 耗时分析
  • 数据结构作业day4
  • pyecharts地图类型
  • 暴力破解漏洞
  • node.js_npm : 无法加载文件 D:\Program Files\nodejs\npm.ps1
  • [java][高级]FilterListenerAjax
  • 双瑞股份上会,业绩增速放缓,与部分供应商交易合理性不足
  • 使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习(四) annaconda和pytorch