描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0。不得使用库函数,同时不需要考虑大数问题,也不用考虑小数点后面0的位数。
好像就是数学问题,应该是要最优化时间和空间复杂度。
讨论组看到一个很好理解的代码。
class Solution:
def Power(self, base, exponent):
# write code here
temp = base
# 0的0次方和0的负数次方无意义
if base == 0.0 and exponent <= 0:
return None
#0的次方为0
if base == 0.0 :
return 0
#除0以外的任何数的0次方都为0
if exponent == 0:
return 1
#负数次方时
if exponent < 0:
for i in range(-exponent-1):
base *= temp
return 1.0 / base
else:
#正数次方时
for i in range(exponent-1):
base *= temp
return base