斐波那契递归调用树

只保留输入、代码和递归树,课堂上可以逐层展开来讲“重复子问题”。

Python 代码

递归关系很短,但调用树会迅速变大
1def fib(n):
2    if n <= 1:
3        return n
4    return fib(n - 1) + fib(n - 2)
当前展开层
递归基 / 叶子节点
重复出现的子问题

递归调用树

准备展示 fib(5)
当前层数:0 总层数:0 可见节点:0
重复子问题会在这里提示。