This question already has answers here:
Closed 4 years ago.
How does the fibonacci recursive function “work”?
(11个答案)
我用两个return语句陷入这个递归中。有人能一步一步地告诉我结果吗?
caos(9);

int caos( int n ) {
    if (n < 4) {
        return n;
    } else return caos(n-2) + caos(n-4);
}

最佳答案

根据我的评论,我不会给你一个完整的解决方案,但我会尽力帮助你做一些事情,你可以开始。
让我们采取caos(9)

                         caos(9)    9 < 4? no
                       /         \
                      /           \
      7 < 4? no  caos(7)          caos(5)  5 < 4? no
                 /    \           /     \
                /      \         /       \
   5 < 4? no caos(5)   caos(3)  caos(3)  caos(1)
             /   \          ↑        ↑        ↑
           ..    ..      all are < 4, let's go up!
                       remember the stop condition. It returns n

08-26 19:21