Recursion 什么是前端递归?

Recursion 什么是前端递归?,recursion,tail-recursion,Recursion,Tail Recursion,我已经看到了与尾部递归相对的术语,我想知道两者之间的区别是什么。因此,基本上什么是前端递归?前端递归是在方法中首先进行递归调用时,而后端递归是在方法中最后一次进行递归调用时 前端递归示例: void Show(int num) { if (num > 0) { Show(num - 1); } Console.WriteLine(num); } void Show(int num) { Console.WriteLine(num); if (num >

我已经看到了与尾部递归相对的术语,我想知道两者之间的区别是什么。因此,基本上什么是前端递归?

前端递归是在方法中首先进行递归调用时,而后端递归是在方法中最后一次进行递归调用时

前端递归示例:

void Show(int num) {
  if (num > 0) {
    Show(num - 1);
  }
  Console.WriteLine(num);
}
void Show(int num) {
  Console.WriteLine(num);
  if (num > 0) {
    Show(num - 1);
  }
}
显示结果(3)

尾端递归示例:

void Show(int num) {
  if (num > 0) {
    Show(num - 1);
  }
  Console.WriteLine(num);
}
void Show(int num) {
  Console.WriteLine(num);
  if (num > 0) {
    Show(num - 1);
  }
}
显示结果(3)


另请参见递归树遍历算法以了解另一个示例:可能的