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

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

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

// 2^3

pow(2,3) == 8


// 5^5

pow(5,5) == 3125




开心每一天1111
浏览 1558回答 3
3回答

呼唤远方

通过平方进行幂。int ipow(int base, int exp){     int result = 1;     for (;;)     {         if (exp & 1)             result *= base;         exp >>= 1;         if (!exp)             break;         base *= base;     }     return result;}这是非对称密码学中对巨大数字进行模幂运算的标准方法。

拉丁的传说

如果你需要提高2倍的能量。要做到这一点,最快的方法就是按功率进行移动。2&nbsp;**&nbsp;3&nbsp;==&nbsp;1&nbsp;<<&nbsp;3&nbsp;==&nbsp;82&nbsp;**&nbsp;30&nbsp;==&nbsp;1&nbsp;<<&nbsp;30&nbsp;==&nbsp;1073741824&nbsp;(A&nbsp;Gigabyte)
打开App,查看更多内容
随时随地看视频慕课网APP