该题目来源于牛客网<剑指offer>专题. 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0) n<=39 Go语言实现: 递归: func fib(N int) int { if N == 0 { return 0 } if N == 1 { return 1 } return fib(N-1) + fib(N-2) } 迭代: func fib(N int) int { if N == 0 { return 0 } if N == 1…
著名的斐波拉契数列(Fibonacci),除第一个和第二个数外,任意一个数都可由前两个数相加得到: 1, 1, 2, 3, 5, 8, 13, 21, 34, ... 如果用Python的列表生成式,很难写出来 如果用函数和生成器的话就很容易了 def fib(max): n, a, b = 0, 0, 1 while n < max: print(b) a, b = b, a + b n = n + 1 return 'done'需要注意上面的 a,b = b, a+b 相当于: t = (b…