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

Pow(x,n) 快速幂

终于要到端午节啦 mikey终于要回到幸福的家啦啦啦啦啦啦啦啦~~~~

实现Pow(x,n),即计算 x 的整数 n 次幂函数

解法一:递归 自顶向下

 

 

 

class Solution {public double myPow(double x, int n) {long N = n;if(N<0){return pow(1/x,-N);}return pow(x,N);}private double pow(double x,long n){if(n==0){return 1.0;}if(n==1){return x;}if(n%2==1){return x*pow(x,n-1);}return pow(x*x,n/2);}
}

解法二:把指数看成二进制形式 自底向上

快速幂算法的核心思想是利用指数的二进制表示来减少乘法的次数。

class Solution {public double myPow(double x, int n) {long N = n;if(N<0){N = -N;x = 1/x;}double res = 1.0;while(N>0){if((N%2)==1){res*=x;}N/=2;x*=x;}return res;}
}
http://www.xdnf.cn/news/8983.html

相关文章:

  • 软件测试过程中如何定位BUG
  • JESD204B 协议介绍
  • 当前上下文中不存在名称“X509CertificateLoader”,编译.NET 9依赖
  • Django orm详解--工作流程
  • ACM Latex模板:合并添加作者和单位
  • 李沐动手深度学习(pycharm中运行笔记)——10.多层感知机+从零实现+简介实现
  • 鸿蒙OSUniApp 实现动态的 tab 切换效果#三方框架 #Uniapp
  • 《软件工程》第 4 章 - 需求获取
  • XBench:重塑AI能力评估范式,红杉中国如何定义下一代智能体度量标准?
  • RAGFlow源码安装操作过程
  • Android studio进阶开发(六)--如何用真机通过okhttp连接服务器
  • idea中使用Maven创建项目
  • 深入研究Azure 容器网络接口 (CNI) overlay
  • 十四、【鸿蒙 NEXT】如何更改har包的版本号
  • 【React-rnd深度解析】- 01 看看核心逻辑
  • 汽车零部件行业PLM案例:得瑞客汽车(Dereik) 部署国产PLM
  • OpenHarmony平台驱动使用(三),DAC
  • pyqt中添加资源文件
  • STM32 RTC实时时钟\BKP备份寄存器\时间戳
  • 2025 年开源 LLM 发展趋势细致解读
  • Unity中partial的作用
  • MSSQL + SMB 捕获 NTLM 哈希和中继攻击
  • OpenSSL 签名验证详解:PKCS7* p7、cafile 与 RSA 验签实现
  • 康师傅的“价值战”答卷:一碗面的创新与担当
  • Trae中使用mcp连接MariaDB
  • 第五十二节:增强现实基础-简单 AR 应用实现
  • 55页 @《人工智能生命体 新启点》中國龍 原创连载
  • RISC-V 开发板 MUSE Pi Pro RTSP 串流 CSI ov5647 摄像头
  • OS:进程管理中
  • Git Push 失败:HTTP 413 Request Entity Too Large