BinarySearch-----50. Pow(x, n)

来源:互联网 发布:win10右下角网络红叉 编辑:程序博客网 时间:2024/06/06 16:32

原题目

参考资料

简单来说,这种实现类的问题出现的几率很大。那么这里来讲的是一个简单实现xn=xn/2xn/2xn%2.这样的话我们就可以通过计算xn/2来进行递归了。

public double myPow(double x,int n){    if(n<0){        return 1/power(x,-n);    }else {        return power(x,n);    }}public void power(double x,int n){    if(n==0){        return 1;    }    double temp=power(x,n/2);    if(n%2==0){        return temp*temp;    }else {        return temp*temp*x;    }}

这应该是最易懂的解法了