在C++中,可以使用递归来实现快速幂算法。下面是一个示例代码:\n\ncpp\n#include <iostream>\n\nint power(int base, int exponent) {\n // 递归终止条件\n if (exponent == 0) {\n return 1;\n }\n \n // 递归计算 base^(exponent/2)\n int result = power(base, exponent / 2);\n \n // 根据指数的奇偶性,进行不同的计算\n if (exponent % 2 == 0) {\n return result * result;\n } else {\n return base * result * result;\n }\n}\n\nint main() {\n int base = 2;\n int exponent = 10;\n int result = power(base, exponent);\n std::cout << base << "^" << exponent << " = " << result << std::endl;\n return 0;\n}\n\n\n这个代码中,power函数使用递归的方式计算baseexponent次幂。递归终止条件是exponent等于0,此时返回1。否则,递归计算base^(exponent/2)的结果,并根据exponent的奇偶性进行不同的计算。如果exponent是偶数,则返回result * result;如果exponent是奇数,则返回base * result * result。在main函数中,我们调用power函数计算2的10次幂,并输出结果。\n\n运行这段代码,输出结果为:\n\n\n2^10 = 1024\n\n\n这表示2的10次幂等于1024。

C++ 递归实现快速幂算法:示例与解析

原文地址: https://www.cveoy.top/t/topic/pKyG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录