- 函数递归获取
func fbn(n int) int { if n ==1 || n == 2{ return 1 }else { return fbn(n -1) +fbn(n - 2) } }
函数开启的栈太多,容易导致内存泄漏
- 数组或切片的方式获取
func fbn(n int) []uint64 { var slice = make([]uint64,n) slice[0] =1 if n >=2 { slice[1] = 2 for i:=2;i<n;i++ { slice[i] = slice[i-1] +slice[i-2] } } return slice }
再获取到切片的最后一个元素 slice[len(slice) -1:]