斐波那契数列n项的值。(递归和非递归算法Golang实现)
递归实现:
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
}
浙公网安备 33010602011771号