我有一个关于尾递归的问题。据我所知Tail递归是函数的最后一次递归调用将传递函数的结果。但是,当我有这样的功能
def func1(n: Int): Int = {
if (n > 100) {
n - 10
}
else {
func1(func1(n + 11))
}
}
它会是尾递归吗?例如
func1(100) = func1(func1(111)) = func1(101) = 91
所以最后一次递归调用将是func1(101),它应该传递结果,这样尾递归才对吗?我有点困惑。谢谢!