当前位置: 首页 > 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)(由于递归调用栈)

相关文章:

  • 『 测试 』软件测试全流程与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 开发的基石与演进
  • 美国务院批准向土耳其出售导弹及相关部件,价值3.04亿美元
  • 紫光集团原董事长赵伟国一审被判死缓
  • 远如《月球背面》,近似你我内心
  • 中巡组在行动丨①震慑:这些地区有官员落马
  • 佩斯科夫:若普京认为必要,将公布土耳其谈判俄方代表人选
  • 习近平出席中拉论坛第四届部长级会议开幕式并发表主旨讲话