这是《剑指offer》里的一道题,内容是给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
多年没怎么刷过题的我,第一眼感觉就是这题用最简单的乘法做下去肯定是对的,但可能效率堪忧。当然要考虑一些特殊情况,比如是exponent是0或负数,base是0或1之类的:
def pow(base, exponent):
if base in (0.0, 1.0):
return base
if exponent == 0:
return 1.0
num = 1.0
for i in xrange(abs(exponent)):
num *= base
return num if exponent > 0 else 1.0/num
原文:https://www.cnblogs.com/wickedpriest/p/14321633.html