1.闭包


func Fibonacci( n int ) int {
	// write code here
	a, b := 0,1
	return func() int {
		for i :=0;i<n;i++{
			a,b = b, a+b
		}
		return a
	}()
}

2.递归

func Fibonacci2( n int ) int {
	// write code here
	if n==0{
		return 0
	} else if n == 1 || n==2{
		return 1
	}else {
		return Fibonacci2(n-1) + Fibonacci2(n-2)
	}
}



欢迎留言