顧名思義,快速冪就是快速算底數的n次冪。

比如計算3的10此方,可以看到一下方法。

普通計算就是:3^10=3*3*3*3*3*3*3*3*3*3

可以變換為:3^10=(3*3)*(3*3)*(3*3)*(3*3)*(3*3)

也就是先對3自己進行平方,再求五次,就是3^10=(3*3)^5,這就相當於求了5次乘法。

最後可以變成先算3的平方,然後算其中五次,相當於只算了3次乘法。

根據這個過程,可以得到其時間複雜度為 o(log?N),與樸素的o(N)相比效率有了極大的提高。

其中用的是二分法。