分治算法实例

1、求x的n次幂

public long power(int x,int n){
        long result;
        if(n==1){
            return x;
        }else{
            if(n%2==0){
                result = power(x,n/2)*power(x,n/2);
            }else{
                result = power(x,n/2+1)*power(x,n/2);
            }
        }
        return result;
    }

注:这只是一个示例,具体说来,计算x的n次幂时,分治算法的性能并不高。

你可能感兴趣的:(数据结构与算法)