每一个方法的运行,我门认为它是入栈,当一个方法调用完,我们认为它出栈。
递归就是自己方法里面调用自己方法,方法里面提供一个退出点。
//斐波那契数列 递归实现 栈的应用 static int Fbi(int i) { Console.WriteLine("Fbi(" + i + ") 被调用(入栈)"); if (i < 2) { num++; Console.WriteLine("Fbi(" + i + ") 调用完毕(出栈)"); return i == 0 ? 0 : 1; } int a = Fbi(i - 1); int b = Fbi(i - 2); Console.WriteLine("Fbi(" + i + ") 调用完毕(出栈)"); return a + b; }