数论-快速幂

来源:互联网 发布:电饭煲型号推荐 知乎 编辑:程序博客网 时间:2024/05/16 17:43

快速幂算法通过递归减小幂运算的规模。

long int Pow(long int X, unsigned int N){    if (N == 0) {        return 1;    }//    if (N == 1) {//        return X;//    }    if (!(N & 1)) {                     //N为偶数        return Pow(X * X, N / 2);    }    else        return Pow(X * X, N / 2) * X;}

N & 2等价于N % 2。

其中if (N == 1)的条件语句可以省略,将N作为奇数处理。

0 0
原创粉丝点击