在O(log)时间内在没有幂函数的情况下计算Java中的功率

时间:2015-01-07 04:47:45

标签: java algorithm

我有一个潜在的雇主发给我的这个问题,我的回答显然不符合要求。有人可以帮忙吗?

  

实现计算功率(A,B)的函数,其中A和B是   正整数,假设你没有幂函数   编程语言。另外,假设A和B属于Big Integer类型   没有算术溢出。什么是计算   功能的复杂性?你能想出一个可以运行的解决方案吗?   记录(B)时间?

1 个答案:

答案 0 :(得分:2)

我只是给你一个提示。假设B是45.那么A 45 = A 32 * A 8 * A 4 * A 1 。您可以从A开始计算A 1 ,A 2 ,A 4 ,A 8 等。在每次迭代中对其进行平方。