分治算法
x的n次方
题目来源
解题思路
方法一
- 调用标准库
方法二
- 暴力破解
方法三
- 分治
精简解题
func myPow(x float64, n int) float64 {
switch {
case n == 0:
return float64(1)
case n == 1:
return x
case n < 0:
return 1 / myPow(x, -n)
}
if n & 1 == 0 {
return myPow(x*x, n>>1)
} else {
return myPow(x*x, n>>1)*x
}
}