What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
cs:programming:python:courses:gtx_cs1301x:chpt_5 [2024/01/14 13:59] – ↷ 页面cs:fundamental:gtx_cs1301x:chpt_5被移动至cs:programming:python:courses:gtx_cs1301x:chpt_5 codingharecs:programming:python:courses:gtx_cs1301x:chpt_5 [2024/01/14 14:03] (当前版本) – ↷ 链接因页面移动而自动修正 codinghare
行 250: 行 250:
 需要注意的是,这里最开始的 $n$,实际上是处于 stack 的最底层。最先计算的,实际上是我们的 base case,也就是这里的 1。这个过程可以想象为,如果我们要解 $5!$,那么首先要求 $4!$,如果要求 $4!$,首先要得到 $3!$...以此类推。当我们最终达到我们已知的 base case,也就是求得 $2!$ 时,整个递归会将求得的结果带入到 stack 下方已经展开的计算部分,直到完成计算。 需要注意的是,这里最开始的 $n$,实际上是处于 stack 的最底层。最先计算的,实际上是我们的 base case,也就是这里的 1。这个过程可以想象为,如果我们要解 $5!$,那么首先要求 $4!$,如果要求 $4!$,首先要得到 $3!$...以此类推。当我们最终达到我们已知的 base case,也就是求得 $2!$ 时,整个递归会将求得的结果带入到 stack 下方已经展开的计算部分,直到完成计算。
 </WRAP> </WRAP>
-{{ :cs:fundamental:gtx_cs1301x:recursion.svg?100 |}}+{{ cs:programming:python:courses:gtx_cs1301x:recursion.svg?100 |}}
 ==实例2:Fibonacci 数列== ==实例2:Fibonacci 数列==
   * base case: $1$ ($F(1) = 1$, $F(2) = 1$)   * base case: $1$ ($F(1) = 1$, $F(2) = 1$)