https://leetcode.com/problems/powx-n/
快速幂的实现!
递归
class Solution:def myPow(self, x: float, n: int) -> float:if n == 0:return 1isNeg = n < 0n = -n if isNeg else nhalf = self.myPow(x, n // 2)res = half * halfif n % 2 == 1:res *= xreturn 1 / res if isNeg else res
迭代
class Solution:def myPow(self, x: float, n: int) -> float:isNeg = n < 0n = -n if isNeg else nres = 1.while n > 0:if n % 2 == 1:res *= xx *= xn //= 2return 1. / res if isNeg else res
