【递归1】 leetcode50 快速幂Pow(x,n)
快速幂是经典常考题目,值得一写,用一个公式就一目了然了:
xn=xn2⋅xn2=(x⋅x)n2x^{n}=x^{\frac{n}{2}} \cdot x^{\frac{n}{2}}=(x \cdot x)^{\frac{n}{2}}xn=x2n⋅x2n=(x⋅x)2n
通过这个公式,每次可以减少一半的计算次数,用1次x*x的计算换取了n/2次x
*x的计算,这用的就是分治的思想。
然后看讨论几个简单的问题,就可以完全解决了:
(1)为什么1次能换n/2次?
放到文章最后讨论。
(2)n为负数、奇数时.
原创
2021-06-22 11:46:01 ·
86 阅读 ·
0 评论