美文网首页
12. 数值的整数次方

12. 数值的整数次方

作者: 丶沧月 | 来源:发表于2019-03-13 22:33 被阅读0次

题目描述

给定一个 double 类型的浮点数 base 和 int 类型的整数 exponent,求 base 的 exponent 次方。

解题思路

下面的讨论中 x 代表 base,n 代表 exponent。

因为 (x*x)n/2 可以通过递归求解,并且每次递归 n 都减小一半,因此整个算法的时间复杂度为 O(logN)。

代码实现

public double Power(double base, int exponent) {
    if (exponent == 0)
        return 1;
    if (exponent == 1)
        return base;
    boolean isNegative = false;
    if (exponent < 0) {
        exponent = -exponent;
        isNegative = true;
    }
    double pow = Power(base * base, exponent / 2);
    if (exponent % 2 != 0)
        pow = pow * base;
    return isNegative ? 1 / pow : pow;
}

相关文章

  • 12. 数值的整数次方

    题目描述 给定一个 double 类型的浮点数 base 和 int 类型的整数 exponent,求 base ...

  • 剑指 offer:12、数值的整数次方

    12. 数值的整数次方 题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求b...

  • 剑指offer-11~14

    11.二进制中1的个数 12.数值的整数次方给定一个double类型的浮点数base和int类型的整数expone...

  • 《剑指 Offer (第 2 版)》第 16 题:数值的整数次方

    第 16 题:数值的整数次方(快速幂) 传送门:AcWing:数值的整数次方,牛客网 online judge 地...

  • 剑指offer.C++.code11-15

    11. 二进制中1的个数 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 12. 数值的整数次方...

  • 剑指Offer刷题记录11-20

    11.二进制中1的个数12.数值的整数次方13.调整数组顺序使奇数位于偶数前面14.链表中倒数第K个节点15.反转...

  • 剑指offer(十二)数值的整数次方

    数值的整数次方 是为了考察代码完整性点击进入 牛客网题库:数值的整数次方 题目描述:给定一个double类型的浮点...

  • 数值的整数次方

    题目描述: 解析一: 初看,就是求一个 double类型的数值的n次方,用代码来写就是n次数值相乘。但是,这道题的...

  • 数值的整数次方

    给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

  • 数值的整数次方

    题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent...

网友评论

      本文标题:12. 数值的整数次方

      本文链接:https://www.haomeiwen.com/subject/wgixmqtx.html