剑指Offer16-数值的整数次方
剑指 Offer 16. 数值的整数次方
实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn)。不得使用库函数,同时不需要考虑大数问题。
示例 1:
输入:x = 2.00000, n = 10
输出:1024.00000
思路是使用快速幂。简单来说就是将指数改写为二进制。然后通过循环复制x *= x
,在指数二进制为1的位置,将结果乘上x即res *= x
。详细的描述可以看参考题解。
对于指数为负数的处理,如果指数为负数,x = 1 / x
并将指数再设置为正数即可。比如可以转化为
1 | class Solution { |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Lucky Le の Blog!
评论