递归实现:
func f(num int) int { if num == 1 || num == 2 { return 1 } return f(num-1) + f(num-2) }
非递归实现:
func fbnqList2(num int) int { if num == 1 || num == 2 { return 1 } pre1 := 1 pre2 := 1 for i := 3; i < num; i++ { tmp := pre1 + pre2 pre1 = pre2 pre2 = tmp } return pre1 + pre2 }