50. Pow(x, n)

来源:互联网 发布:淘宝网鞋子女鞋春季 编辑:程序博客网 时间:2024/06/07 18:13

Implement pow(xn).


My solution:

public class Solution {    public double myPow(double x, int n) {        long l=(long)n;        if(l>=0)            return pow(x,l);        else            return 1/pow(x,-l);    }    static double pow(double x,long n){        if(n==0)            return 1;        double temp=pow(x*x,n/2);        if(n%2==1)            temp*=x;        return temp;     }}

Non-recursive

public class Solution {    public double myPow(double x, int n) {        long i=(long) n;        double out=1;        if(i<0){            x=1/x;            i=-i;        }        while(i!=0){            if((i&1)==1)                out=out*x;            x*=x;;            i>>=1;                    }        return out;            }}


0 0