由递归方式求的N的阶乘(即N,),时间复杂度是多少

 我来答
生活畅谈者
高能答主

2020-10-30 · 生活新鲜事,看我就知道
生活畅谈者
采纳数:418 获赞数:344760

向TA提问 私信TA
展开全部

每次递归内部计算时间是常数,故O(n)。

用递归方法计算阶乘,函数表达式为f(n)=1 若n=0 f(n)=n*f(n-1),若n>0,如果n=0,就调用1次阶乘函数,如果n=1,就调用2次阶乘函数,如果n=2,就调用3次阶乘函数,如果n=3,就调用4次阶乘函数。

扩展资料:

注意事项:

利用递归树方法求算法复杂度,其实是提供了一个好的猜测,简单而直观。在递归树中每一个结点表示一个单一问题的代价,子问题对应某次递归函数调用,将树中每层中的代价求和,得到每层代价,然后将所有层的代价求和,得到所有层次的递归调用总代价。

递归树最适合用来生成好的猜测,然后可用代入法来验证猜测是否正确。当使用递归树来生成好的猜测时,常常要忍受一点儿不精确,因为关注的是如何寻找解的一个上界。

参考资料来源:百度百科-递归算法

参考资料来源:百度百科-阶乘

参考资料来源:百度百科-时间复杂度

笪周陈鹏海
2020-04-24 · TA获得超过3812个赞
知道大有可为答主
回答量:3109
采纳率:31%
帮助的人:170万
展开全部
o(n)线性时间复杂度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c5594d1
2018-12-14 · 超过34用户采纳过TA的回答
知道答主
回答量:82
采纳率:70%
帮助的人:24.7万
展开全部
递归求n的阶乘,会递归n次,每次递归内部计算时间是常数,故O(n)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式