顧名思義,快速冪就是快速算底數(shù)的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次乘法。
根據(jù)這個過程,可以得到其時間復雜度為 O(log?N),與樸素的O(N)相比效率有了極大的提高。
其中用的是二分法。