leetcode 50 Pow(x,y)

àì夳堔傛蜴生んèń 2023-06-16 01:50 108阅读 0赞

实现 pow(x, n) ,即计算 x 的 n 次幂函数。

示例 1:

输入: 2.00000, 10
输出: 1024.00000
示例 2:

输入: 2.10000, 3
输出: 9.26100
示例 3:

输入: 2.00000, -2
输出: 0.25000
解释: 2-2 = 1/22 = 1/4 = 0.25

介绍一个快速幂算法:

  1. class Solution {
  2. public double myPow(double x, int n) {
  3. double res = 1.0;
  4. for (int i = n;i != 0;i /= 2) {
  5. if (i % 2 != 0) {
  6. res *= x;
  7. }
  8. x *= x;
  9. }
  10. return n > 0?res:1/res;
  11. }
  12. }

发表评论

表情:
评论列表 (有 0 条评论,108人围观)

还没有评论,来说两句吧...

相关阅读

    相关 LeetCode 50】Pow(x,n)

    题目描述 解题思路 看到这一题,最直接的思路就是暴力计算,判断n的正负,如果为正就让底数x直接累乘,如果为负就让底数的倒数1/x累乘。 但是!写完,提交,报错:超