题解 | #数值的整数次方#
数值的整数次方
http://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param base double浮点型
# @param exponent int整型
# @return double浮点型
#
class Solution:
def Power(self , base: float, exponent: int) -> float:
res = 1
for i in range(abs(exponent)):
res *= base
if exponent > 0:
return res
else:
return 1/res
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param base double浮点型
# @param exponent int整型
# @return double浮点型
#
class Solution:
def Power(self , base: float, exponent: int) -> float:
if exponent >= 0:
return self.PowerPositiveE(base, exponent)
else:
return 1.0 / self.PowerPositiveE(base, -exponent)
def PowerPositiveE(self,base,exponent):
if exponent == 0:
return 1
if exponent == 1:
return base
res = self.PowerPositiveE(base, exponent>>1)
res *= res
if (exponent & 0b1) == 1:
res *= base
return res