LeetCode 50 - Pow(x, n)
题目
实现 pow(x, n),即计算 x 的 n 次幂。
解题思路
使用快速幂(分治):
- 若
n为偶数:x^n = (x^(n/2))^2 - 若
n为奇数:x^n = x * x^(n-1)
为了处理负指数,把 x 取倒数并将 n 取相反数。
代码实现(Python)
1 | class Solution: |
复杂度分析
- 时间复杂度:
O(log n) - 空间复杂度:
O(1)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Never Settle!
评论