题目内容

设有一个递归算法如下: int fun(int n) { if (n<=0) return 1; else return n*fun(n-1); } 以下正确的叙述是( )。

A. 计算fun(n)需要执行n次递归
B. fun(7)=5040
C. 此递归算法最多只能计算到fun(8)
D. 以上结论都不对

查看答案
更多问题

一个递归定义可以用递归算法求解,也可以用非递归算法求解。但单从执行时间来看,通常递归算法比非递归算法( )。

A. 较快
B. 较慢
C. 相同
D. 无法比较

以下关于递归的叙述中错误的是( )。

A. 一般而言,使用递归解决问题较使用循环解决问题需要定义更多的变量
B. 递归算法的执行效率相对较低
C. 递归算法的执行需要用到栈
D. 递归能使算法的代码更加简洁

正确的递归算法应包含( )。

A. 递归出口
B. 递归体
C. 递归出口和递归体
D. 以上都不包含

递推式f(1)=0,f(n)=f(n/2)+1的解是___。

答案查题题库