1. 2 的幂次方

给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。
如果存在一个整数 x 使得 n == 2^x ,则认为 n 是 2 的幂次方。

2 的 N 次方的二进制必然为 10,100,1000,1000…0 类似的,所以只需要将该整数的二进制表示法与它减 1 的二进制表示法进行与操作,结果为 0 的必然为 2 的 N 次方。

class Solution {public:bool isPowerOfTwo(int n) {return n>0 && (n&(n-1))==0;    }
};

2. 3 的幂次方——循环法

给定一个整数,写一个函数来判断它是否是 3 的幂次方。如果是,返回 true ;否则,返回 false 。
整数 n 是 3 的幂次方需满足:存在整数 x 使得 n == 3^x

一个数是 3 的 N 次方,那么该数字一定可以被 3 整除,被 3 整除后不断循环除以 3,直到该数字等于 1 时,返回 true,如果不为 1 则返回 false。

class Solution {public:bool isPowerOfThree(int n) {if (n == 0){return false;}while (n%3==0){n /= 3;}return n==1 ? true:false;}
};

3. 4 的幂次方——递归法

给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true ;否则,返回 false 。
整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 4^x

class Solution {public:bool isPowerOfFour(int n) {if (n == 0){return false;}else if (n == 1){return true;}else{return (n%4)==0 ? isPowerOfFour(n/4):false;}}
};

判断 2 的幂次方、3 的幂次方、4 的幂次方相关推荐

  1. C语言循环求出2的10次幂,C语言求2的100次幂的结果.doc

    C语言求2的100次幂的结果 求2的100次幂的结果 #include #include #include #include void main void int a,b,i; char s[40], ...

  2. mysql 幂运算_算法—史上最好快速幂算法讲解

    前言 快速幂是什么?顾名思义,快速幂就是快速算底数的n次幂. 有多快?其时间复杂度为 O(log₂n), 与朴素的O(n)相比效率有了极大的提高. 用的多么?快速幂属于数论的范畴,本是ACM经典算法, ...

  3. 2的5次方用计算机怎么算,2的5次方(2的5次方怎么算)

    2的5次方=2x2x2x2x2=4x4x2=16x2=32 32. 你可以适当的记一些常见的次方数据.就如2的1--10次方,分别为 2,4,8,16,32,64,128,256,512,1024. ...

  4. 如何用计算机算10的-5次方,在excel中如何计算10的几次方呢

    excel的运算功能我们都知道非常强大,但是在excel中如何计算10的几次方呢?今天小编就通过一个简单的例子来给大家介绍下在excel中10的几次方的输入和运算方法. 第一.excel 10的几次方 ...

  5. 判断一个数是否是 2、3、4的幂次方

    2的几次幂 判断一个数是否是 2的幂次方: 思路:在二进制中 2^n形式如下 2^1=2:10                          1:01 2^2=4:100              ...

  6. C/C++:计算N的N次方的个位数(巧用快速幂与模运算性质)

    题目描述(源自杭电OJ): 相关数学知识一:取模运算的性质  a乘b的结果对p取模等于a对p取模的结果乘b对p取模的结果再整体取模于p,详见下图 证明过程如下: 相关数学知识二:快速幂运算 以求a的b ...

  7. C语言判断一个数是否是质数(蒙格马利快速幂算法)

    前言: 今天搞了一天这个 蒙格马利 什么的,我自己肯定是搞不定,参照了很多资料,写一下自己的理解总结,防止忘了没地方看. 只是我个人的理解,对不对还得另说,一些公式还是不懂,只是大概的理解了下,各位当 ...

  8. 判断素数问题(费马小定理,蒙哥马利模幂)

    题目描述 给定多个大于 1 的整数,判断是否为素数 输入 输入多行,每行是一个大于 1 的整数或字母 q 输出 对于每一行输入: 如果该行是正整数,那么输出一行,输出内容为 T 或 F,代表这个正整数 ...

  9. c语言整数幂怎么编译,c语言次方(c程序怎么编写x的y次方)

    for (i = 0; i < n; i++) { result *= num; // num 为底数,n 为幂, result 为结果 } 循环表示:S=a^10可表示为:for(int i= ...

  10. 怎么用计算机计算e的n次方,Excel 计算e的n次幂:EXP函数

    EXP函数的功能是计算e的n次幂.EXP函数的语法如下: EXP(number) 其中,number参数为应用于底数e的指数.常数e等于2.71828182845904,是自然对数的底数.下面通过实例 ...

最新文章

  1. oracle视图能用etl工具_(转)使用kettle作为sqlserver2008和oracle10G之间的ETL工具
  2. 一句话生成数字人形象、昆仑芯2量产…百度大脑升级7.0,王海峰:技术更强了门槛却更低...
  3. ip动态分配痕迹会保留多久_16,虚拟机的服务IP老变,怎么办?
  4. 美女学霸直博中科院,本科武大王者全国16强,妥妥现实版“爽文女主”!
  5. 08Mysql与python交互
  6. gif透明背景动画_做动画片用什么软件?99%的人用它就做出来了 - 动画制作博客...
  7. datatables 添加时间按钮_Java 添加页面跳转按钮到PDF文档
  8. Linux中变量#,@,0,1,2,*,$$,$?的意思
  9. 安装erlang没有bin文件夹_RabbitMQ安装教程
  10. Hadoop安装部署
  11. 四个简单的步骤告别烦人的flash广告
  12. CRMEB开源商城部署在腾讯云
  13. OpenLayers多源数据加载一:数据组织
  14. Java中Map详解
  15. 手机摄影技巧总结——永远拍出美美的照片
  16. 商城系统开发,使用微信服务号好?还是小程序?
  17. Servlet - Java Web Core Component
  18. 常见的几种协同设计平台对比分析
  19. 抖音直播带货复盘数据怎么分析?3个小技巧快速掌握直播复盘
  20. 缓存就是万金油,哪里有问题哪里抹一下 。那他的本质是什么呢?

热门文章

  1. Excel 快速跳到表格最后一行/第一行
  2. 虞美人【秦观】鸳鸯惊起不无愁。柳外一双飞去、却回头。
  3. 全新造型游戏耳机再出发—极度未知HyperX 毒刺2 灵动版游戏耳机
  4. 华芯通关闭,华为等国产服务器芯片企业再受打击
  5. 推广文案写作有哪些技巧,母婴用品文案内容撰写时需要注意的事项
  6. 递归算法从入门到完全掌握
  7. 降噪无线耳机推荐,热销火爆的降噪蓝牙耳机分享
  8. 基于NMF的推荐系统实例
  9. plantuml绘制UML图
  10. 证券行业的数字化转型:数字新基建 (云、中台、数字化解决方案)