1.必须有一个明确的结束条件:常用带有两个return值
2.效率不高,并且递归层次过多会导致栈溢出:函数调用通过栈(stack)这种数据结构实现,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减少一层栈帧。由于栈的大小不是无限的,所以当多次调用递归函数后,会导致栈溢出
1.必须有一个明确的结束条件:常用带有两个return值
2.效率不高,并且递归层次过多会导致栈溢出:函数调用通过栈(stack)这种数据结构实现,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减少一层栈帧。由于栈的大小不是无限的,所以当多次调用递归函数后,会导致栈溢出