50

// 快速幂算法(递归)
クラスソリューション{
     公共 ダブル MYPOW(ダブルのx、int型N){
         場合(x == 0 ){
             戻り 0 ; 
        } 
        長い N = N。
        もし(N <0 ){ 
            X = 1 / X。
            N = - N。
        } 
        戻りfastPow(X、N)を、
    } 
    公共 ダブル fastPow(ダブル X、長いN){
         場合(0 ==N){
             戻り 1.0 
        } 
        ダブルハーフ= fastPow(X、N / 2 )。
        もし(N%2 == 0 ){
             戻り半分* ハーフ。
        } 
        {
             リターン半分*半分* X。
        } 
    } 
}

 

おすすめ

転載: www.cnblogs.com/zhaijiayu/p/11541653.html
50
50
50