50-pow(x,n)

類別:遞歸,二分 難度:mediumweb 算法分析 若是是暴力進行循環求解的話,會超時,因此須要二分減小計算量。 對n爲奇數和偶數的狀況分別進行討論: pow(x, n) = (n % 2 == 0) ? pow(x*x, n/2) : x * pow(x*x, n/2); 須要特別注意的是,由於在進行計算以前先將n轉爲正數,因此要考慮n = -(2^31)的狀況,轉爲正數之後會出現溢出的狀況。
相關文章
相關標籤/搜索