小编典典

实现基于整数的幂函数pow(int,int)的最有效方法

algorithm

将整数提升为C中另一个整数的幂的最有效方法是什么?

// 2^3
pow(2,3) == 8

// 5^5
pow(5,5) == 3125

阅读 399

收藏
2020-07-28

共1个答案

小编典典

通过平方求幂。

int ipow(int base, int exp)
{
    int result = 1;
    for (;;)
    {
        if (exp & 1)
            result *= base;
        exp >>= 1;
        if (!exp)
            break;
        base *= base;
    }

    return result;
}

这是对不对称密码中的大量数字进行模幂运算的标准方法。

2020-07-28