课堂小随笔之递归

    科技2022-08-28  101

    求n!和斐波那契数列 递归的定义

    如果一个函数在内部调用自身本身,这个函数就是递归函数。 1.【例子】n! = 1 x 2 x 3 x … x n # 利用循环 n = 5 for k in range(1, 5): n = n * k print(n) # 120 # 利用递归 def factorial(n): if n == 1: return 1 return n * factorial(n - 1) print(factorial(5)) # 120

    2.斐波那契数列 f(n)=f(n-1)+f(n-2), f(0)=0 f(1)=1

    # 利用循环 i = 0 j = 1 lst = list([i, j]) for k in range(2, 11): k = i + j lst.append(k) i = j j = k print(lst) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55] # 利用递归 def recur_fibo(n): if n <= 1: return n return recur_fibo(n - 1) + recur_fibo(n - 2) lst = list() for k in range(11): lst.append(recur_fibo(k)) print(lst) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
    Processed: 0.008, SQL: 9