package main import ( "fmt" // "time" ) func main() { fmt.Println(sum(5)) fmt.Println(amount(5)) } // 1+1+2+3+5 func sum(n int) int { if n == 1 || n == 2 { return 1 } return sum(n-1) + sum(n-2) } // 1+1+2+3+5 func amount(n int) int { if n == 1 || n == 2 { return 1 } a, b := 1, 1 for i := 3; i < n; i++ { a, b = b, a+b } return a + b }
第二种方法性能更好!
有疑问加站长微信联系(非本文作者)