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

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

// 2^3

pow(2,3) == 8

// 5^5

pow(5,5) == 3125

回答:

通过平方求幂。

int ipow(int base, int exp)

{

int result = 1;

for (;;)

{

if (exp & 1)

result *= base;

exp >>= 1;

if (!exp)

break;

base *= base;

}

return result;

}

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

以上是 实现基于整数的幂函数pow(int,int)的最有效方法 的全部内容, 来源链接: utcz.com/qa/404073.html

回到顶部