Pow(x, n)

来源:互联网 发布:description软件 编辑:程序博客网 时间:2024/06/05 05:45

Implement pow(xn).

实现幂函数的求解 

直接暴力求解复杂度为O(N) 超时  如果对半求幂 复杂度为(OlogN)只要分形n的奇偶和正负情况即可 代码如下:

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


0 0
原创粉丝点击