剑指offer——11数值的整数次方(Python)

【题目】给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
【思路】
此题较为简单,首先注意边界条件,还要分清大于0小于0的情况,然后可用递归来做,考虑到递归的时间复杂度较大,此处不做过多介绍。我们使用一个中间量来存储上一次平方运算的结果,循环与基数相乘即可。
【代码】

class Solution:
    def Power(self, base, exponent):
        # write code here
        if base == 0:
            return 0
        elif exponent == 0:
            return 1
        if exponent > 0:
            number = 1
            for i in range(1,exponent+1):
                res = base * number
                number = res
            return res
        else:
            number = 1
            for i in range(1,abs(exponent)+1):
                res = 1/(base*number)
                number = 1/res
            return res
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读