剑指offer 66道-python+JavaScript
数值的整数次方
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
思路
分别用python和javascript实现
考虑全面情况:
底数为0时;
指数为0时;
指数为负数时;
github
python代码链接: https://github.com/seattlegirl/jianzhioffer/blob/master/pow.py.
题目代码(python)
# -*- coding:utf-8 -*-
class Solution:
def Power(self, base, exponent):
result=1;#保存结果
flag=False;#指数是否为负数
#底数为0
if base==0:
return 0
#指数为0
if exponent==0:
return 1
#指数为负数时
if exponent<0:
flag=True
exponent=-exponent
for i in range(0,exponent):
result*=base
#指数为负数时
if flag==True:
result=1/result
return result
print(Solution().Power(2,-2))
github
JavaScript代码链接: https://github.com/seattlegirl/jianzhioffer/blob/master/pow.js.
题目代码(JavaScript)
function rectCover(number)
{
// write code here
//竖着覆盖f(number-1)
//横着覆盖f(number-2)
var result=new Array(number+1)
function Power(base, exponent)
{
var result=1;//保存结果
var flag=false;//指数是否为负数
// 底数为0
if(base===0){
return 0;
}
//指数为0
if(exponent===0){
return 1;
}
//指数为负数时
if(exponent<0){
flag=true;
exponent=-exponent;
}
for(var i=1;i<=exponent;i++){
result*=base;
}
//指数为负数时
if(flag===true){
result=1/result;
}
return result;
}
console.log(Power(2,-3))