fib(5) 会调用几次自己

朴素写法的斐波那契 fib(n),调用次数【0】。

开始练习 →

怎么看清递归的执行过程

想弄清一个递归到底怎么跑的,最实用的办法是【0】。

开始练习 →

第六个斐波那契数是多少

约定 fib(0)=0、fib(1)=1。运行下面这段程序: #include <algorithm> #include <iostream> #include <numeric> #include &l

开始练习 →

它一共调用了自己多少次

同一个朴素写法,数一数一共进了几次函数。运行下面这段程序: #include <algorithm> #include <iostream> #include <numeric> #include <

开始练习 →

写一个能看见过程的递归

补全 walk:进入时把 n 记进 order,然后递归到 n-1,返回时再把 n 记一次。调用 walk(3) 之后,把 order 用 / 拼起来输出。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

数一数朴素斐波那契调了几次

补全 fib,并让它每进一次函数就把 calls 加一。算 fib(6),输出 calls。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

递归停不下来会怎样

C++ 里递归没有出口,一直往下调,最后会【0】。

开始练习 →

无限递归最常见的两种原因

递归停不下来,通常是因为【0】。

开始练习 →

出口写了却还是停不下来

第 1 步:出口:n 等于 0 时返回 第 2 步:来到 n = 5 第 3 步:来到 n = 3 第 4 步:来到 n = 1 第 5 步:来到 n = -1 第 6 步:来到 n = -3 第 7 步:一步跨过 0,再也回不来 5 4

开始练习 →

出口写 == 0 还是 <= 0

把出口从 n == 0 改成 n <= 0,好处是【0】。

开始练习 →