●斐波那契数列 斐波那契数列(Fibonacci sequence),是从1,1开始,后面每一项等于前面两项之和. 如果为了方便可以用递归实现,要是为了性能更好就用循环. ◆递归方式实现生成前30个斐波那契数 list = [] for i in range(30): if i == 0 or i == 1: list.append(1) # print(f"第{i+1}个斐波那契数是:{list[i]}") else: list.append(list[i-2]+list[i-1])
编程题:大家都知道裴波那契数列,现在要求输入一个整数n,请你输出裴波那契数列的第n项(从0开始,第0项为0).n<=39 public class Solution { public int Fibonacci(int n) { Double a = 1/Math.sqrt(5)*(Math.pow(((1+Math.sqrt(5))/2),n)-Math.pow(((1-Math.sqrt(5))/2),n)); int b = a.intValue(); return b; } } 第一遍程
题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1). n<=39 解法1:递归解法 public int Fibonacci(int n) { if(n==0) return 0; if(n==1||n==2) return 1; else return Fibonacci(n-1)+Fibonacci(n-2); } 解法2:循环解法 public int Fibonacci(int n) { int a=1,b=1; i
# 递归 def myAdd(a, b): c = a + b print(c) if c > 100: return return myAdd(a + 1, c) #最大递归深度是1000 myAdd(2, 3) # 功能同上递归 a = 2 b = 3 for i in range(1000): c = a + b print(c) a += 1 b = c def myFibo(a, b): c = a + b print(c) if c > 500: return return myF
def Fib(n): ''' 假定序号为0或者1,返回1,序号为2时返回2 ''' before = 1 after = 1 for i in range(n): before, after = after, before + after return before for i in range(10): print(Fib(i)) 用生成器实现如下: def fib(n): before = 1 after = 1 for i in range(n): yield before before