快速幂

double power(double a, int64_t n){
    if (n < 0){
        if (a == 0){
            // throw exception....
            return 0.0
        }
        return 1.0 / power(a, -n)
    }

    double res = 1, tmp = a;
    while (n) {
        if (n & 1) {
            res *= tmp;
        }
        n >>= 1;
        tmp *= tmp;
    }
    return res;
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!