剑指offer15_数值的整数次方

Posted rebeccag

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer15_数值的整数次方相关的知识,希望对你有一定的参考价值。

题目

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

 保证base和exponent不同时为0。


 

1、用内置函数pow

语法:

技术图片

class Solution:
    def Power(self, base, exponent):
        # write code here
        if base == 0:
            return 0
        elif exponent == 0:
            return 1
        elif base == 1:
            return 1
        elif exponent == 1:
            return base
        else:
            return pow(base, exponent)

 

2、不用pow。分exponent>0和<0的情况

class Solution2:
    def Power2(self, base, exponent):
        # write code here
        if base == 0:
            return 0
        elif exponent == 0 or base == 1:
            return 1
        elif exponent == 1:
            return base
        else:
            result = 1
            if exponent > 0:
                for i in range(exponent):
                    result = result * base
                return result
            else:
                ab_exponent = exponent * (-1)  # 先把exponent取正
                for i in range(ab_exponent):
                    result = result * base
                return 1.0/result

 

以上是关于剑指offer15_数值的整数次方的主要内容,如果未能解决你的问题,请参考以下文章

剑指Offer对答如流系列 - 数值的整数次方

《剑指offer》---数值的整数次方

剑指Offer09 数值的整数次方

《剑指Offer》题目:数值的整数次方

剑指offer 12.数值的整数次方

剑指offer数值的整数次方