14得票4回答
如何识别什么是尾递归,什么不是尾递归?

有时候很简单(如果自调用是最后一个语句,它就是尾递归),但还有一些情况会让我感到困惑。一位教授告诉我,“如果在自调用后没有要执行的指令,那它就是尾递归”。那这些例子呢(忽略它们没有太多意义的事实): a)这个应该是尾递归,因为自调用是最后一个语句,在它之后没有其他需要执行的语句了。funct...