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

50. Pow(x, n)

50. Pow(x, n)

分治法的基本思想是将一个大问题分解成若干个相同或相似的小问题,递归地解决这些小问题,然后将这些小问题的解合并起来得到原问题的解。

class Solution:def myPow(self, x: float, n: int) -> float:# 内部定义了一个嵌套的辅助函数 pow,用于实际的计算。def pow(n: int):if n == 0:return 1.00000y = pow(n//2)return y*y if n%2==0 else y*y*x#  x^n 等于 1 / x^(-n)# 根据 n 的正负,决定是直接调用 pow(n) 还是 1.00000 / pow(-n)return pow(n) if n > 0 else 1.00000/pow(-n)

时间复杂度和空间复杂度

  • 时间复杂度​:每次递归调用都将问题规模减半(n 除以 2),因此时间复杂度为 O(log n)
  • 空间复杂度​:递归的深度为 log n,因此空间复杂度也是 O(log n)(由于递归调用栈)
http://www.dtcms.com/a/191170.html

相关文章:

  • 『 测试 』软件测试全流程与Bug管理核心要点解析
  • 前端~三维地图(cesium)动态材质扩散圆环
  • 编译openssl源码
  • LLM定制新路径:微调与上下文学习的博弈与融合
  • JS中本地存储(LocalStorage)和会话存储(sessionStorage)的使用和区别
  • python使用matplotlib画图
  • 交易所功能设计的核心架构与创新实践
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(21):复习
  • 一般枚举题目合集
  • 【HALCON】 HALCON 教程:正确使用 `get_dict_tuple` 获取字典内容
  • gd32e230c8t6 keil6工程模板
  • loss = -F.log_softmax(logits[:, -1, :], dim=1)[0, irrational_id]
  • 快消零售AI转型:R²AIN SUITE如何破解效率困局
  • CK-S654-PA60一拖四分体式半导体电子货架专用RFID读写器|读码器接线使用说明
  • java day 11
  • acwing 1488. 最短距离 超级源点 最短路 堆优化Dijkstra
  • 03_朴素贝叶斯分类
  • The 2022 ICPC Asia Xian Regional Contest(E,L)题解
  • 鸿蒙:DevEco Studio配置ohpm时,cmd正常,在终端出现‘ohpm‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
  • PHP 编程:现代 Web 开发的基石与演进
  • Vue.js 组件开发指南
  • vim启动的时候,执行gg
  • (3)python开发经验
  • c#中equal方法与gethashcode方法之间有何关联?
  • Linux514 rsync 解决方案环境配置
  • MySQL之基础事务
  • Python uv包管理器使用指南:从入门到精通
  • 鸿蒙5.0项目开发——鸿蒙天气项目的实现(主页1)
  • 力扣144题:二叉树的前序遍历(递归)
  • 力扣-105.从前序与中序遍历序列构造二叉树