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

深圳建科技有限公司网站首页应用商城下载

深圳建科技有限公司网站首页,应用商城下载,巫溪集团网站建设,流程图在线制作网站题记#xff1a; 给定一个整数#xff0c;写一个函数来判断它是否是 3 的幂次方。如果是#xff0c;返回 true #xff1b;否则#xff0c;返回 false 。 整数 n 是 3 的幂次方需满足#xff1a;存在整数 x 使得 n 3^x 示例 1#xff1a; 输入#xff1a;n 27 输出…题记 给定一个整数写一个函数来判断它是否是 3 的幂次方。如果是返回 true 否则返回 false 。 整数 n 是 3 的幂次方需满足存在整数 x 使得 n 3^x 示例 1 输入n 27 输出true 示例 2 输入n 0 输出false 示例 3 输入n 9 输出true 示例 4 输入n 45 输出false 提示 -2 ^ 31 n 2 ^ 31 - 1 进阶你能不使用循环或者递归来完成本题吗 题目来源 作者LeetCode 链接https://leetcode.cn/leetbook/read/top-interview-questions-easy/xnsdi2/ 来源力扣LeetCode 解题方法 自己敲的 一循环一直乘以3判断是否有等于该整数的数存在 function isPowerOfThree($n) {//循环if($n 3 || $n 1)return true;$start 3;while($start $start $n){$start $start * 3;if($start $n){return true;}}return false; }二递归一直除以3 function isPowerOfThree($n) {//递归if($n 1)return true;if($n 0 $n % 3 0 $this-isPowerOfThree($n / 3))return true;return false; }官方方法其实也就是一直乘以3 function isPowerOfThree($n) {$flag true;$num 0;while($flag){$x pow(3,$num); //3的num次方$num;if($x $n){$flag false;return false;} if($x $n){$flag false;return true;} } }其他方法 一一直除以3 一种最简单的方式就是判断n是否能够被3整除如果能够被3整除就除以3直到不能被3整除为止最后判断n是否等于1代码比较简单来看下 public boolean isPowerOfThree(int n) {if (n 1)while (n % 3 0)n / 3;return n 1; }转换为PHP代码为 function isPowerOfThree($n) {//一直除以3if($n 1){while($n % 3 0){$n / 3;}}return $n 1; }二递归方式解决同上面的递归方法只是简化了写法 还可以改为递归的方式一行代码解决 public boolean isPowerOfThree(int n) {return n 0 (n 1 || (n % 3 0 isPowerOfThree(n / 3))); }转换为PHP代码为 function isPowerOfThree($n) {return $n 0 ($n 1 || ($n % 3 0 $this-isPowerOfThree($n / 3))); }三算术表达式计算 先来普及一波数学知识 对数的乘法法则 log(ab) log(a) log(b) 对数的乘法法则表明两个数相乘的对数等于这两个数分别对数后的和。例如log(10100) log(10) log(100) 1 2 3。 对数的除法法则 log(a/b) log(a) - log(b) 对数的除法法则表明两个数相除的对数等于这两个数分别对数后的差。例如log(100/10) log(100) - log(10) 2 - 1 1。 对数的幂法法则 log(a^b) blog(a) 对数的幂法法则表明一个数的幂的对数等于这个数的对数乘以幂的指数。例如log(10^3) 3log(10) 3*1 3。 对数的换底公式 loga(b) logc(b)/logc(a) 对数的换底公式表明任意两个底不同的对数可以用一个公共底的对数来表示。例如log2(8) log10(8)/log10(2) 0.903/0.301 3。 public boolean isPowerOfThree(int n) {return (Math.log10(n) / Math.log10(3)) % 1 0; //对照对数的换底公式//log3(n) }四找到最大幂 题中n的范围是 -2^31 n 2^31 - 1 而在这个范围内3的最大幂是1162261467在比他大就超过int表示的范围了我们直接用它对n求余即可过求余的结果是0说明n是3的幂次方 public boolean isPowerOfThree(int n) {return (n 0 1162261467 % n 0); }转换为PHP代码为 function isPowerOfThree($n) {return ($n 0 1162261467 % $n 0); }方法来源 作者数据结构和算法 链接https://leetcode.cn/leetbook/read/top-interview-questions-easy/xnsdi2/?discussionxhUFcs 来源力扣LeetCode
http://www.pierceye.com/news/13875/

相关文章:

  • 可以做防盗水印的网站安康网站建设公司报价
  • wordpress 调用摘要广州seo网站设计
  • 个人网站托管做基础网站主机要
  • 链接提取视频的网站宁波市建设集团股份有限公司
  • 重庆专业建网站做网站现在可以挣钱吗
  • 网站建设后怎么怎么做网站制作
  • 个人网站源码免费下载旅游app排行榜前十名
  • 企业网站开发需求详细文档旅行社销售网站建设方案
  • 群晖做网站服务器 套件惠州网站建设如何
  • 重庆网站服务器保险行业网站模板
  • 网站怎么排名软件开发模型的种类
  • 唐山的谁会建网站今天出入深圳最新规定
  • 大连网站前端制作公司网站意见反馈源码
  • 公司门户网站开发价格郑州网站制作怎么样
  • asp网站安全性wordpress设置
  • 网站建设需要懂什么wordpress上传产品
  • 呼伦贝尔市规划建设局网站服务器网站建设实训报告
  • 双语网站模板下载asp网站经常 响应
  • 新站整站排名优化火速公司为什么wordpress安装成了英文版
  • 网站建设方案书怎么写样版wordpress c7v5
  • 做网站的域名和空间是什么意思anydrag建站专家网站建设系统
  • 电器企业网站建设方案书机械加工网格刀厂家
  • 怎样用百度做网站优化网站一般怎么维护
  • 庐江有做网站的吗实时热点新闻
  • 网站开发人员上海环球金融中心观光厅
  • 网站建设推广平台有哪些方面网架公司哪个好
  • 市场营销专业招生网站策划书seo需要付费吗
  • 如何写网站开发需求太原搭建网站的公司
  • 有关性的网站网站公司做的网站被攻击
  • 郑州专业公司网站制作公司域名到期了网站备案还有效吗