分治算法幂乘问题python
时间: 2023-07-28 07:12:41 浏览: 182
分治算法
分治算法可以用来解决幂乘问题,具体实现可以参考以下Python代码:
```python
def power(x, n):
# 递归终止条件
if n == 0:
return 1
# 将幂拆分为两半
half = power(x, n // 2)
# 幂为偶数
if n % 2 == 0:
return half * half
# 幂为奇数
else:
return half * half * x
# 测试代码
print(power(2, 10)) #输出1024
```
这个函数接受两个参数,分别是底数x和幂n。在函数内部,首先判断n是否为0,如果是,则直接返回1;否则,将幂n拆分为两半,分别计算一半的幂,然后根据幂的奇偶性来进行计算。如果幂是偶数,就将一半的幂平方;如果幂是奇数,就将一半的幂平方后再乘以底数x。最后返回计算得到的结果。
阅读全文