这道题我十分困惑,请教大神

a707000646 2013-02-23 07:25:59
下面算法的时间复杂度为 。
int f(unsigned int n)
{
if (n==0|| n==1) return 1;
else return n*f(n-1);
}
A. O(1) B. O(n) C. O(n2) D. O(n!)
...全文
210 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dianyancao 2013-02-26
  • 打赏
  • 举报
回复
不理解啊,乘法的O(1)不是伪多项式算法吗?
FancyMouse 2013-02-26
  • 打赏
  • 举报
回复
引用 7 楼 a707000646 的回复:
引用 6 楼 FancyMouse 的回复:http://bbs.csdn.net/topics/390374389#post-393746056晕 怎么啦 那是我发的帖子啊,数据结构这块好像人好少我发了好久了没有人回复所以我就去C++版块问问
我的意思就是放在这里我也是这个答案。
Hony杨 2013-02-25
  • 打赏
  • 举报
回复
这个知道吧:
int f(unsigned int n)
{
	type res =1;
	for (; n > 1; n--)
		res *= n;
	return res;
}
a707000646 2013-02-25
  • 打赏
  • 举报
回复
引用 6 楼 FancyMouse 的回复:
http://bbs.csdn.net/topics/390374389#post-393746056
晕 怎么啦 那是我发的帖子啊,数据结构这块好像人好少我发了好久了没有人回复所以我就去C++版块问问
蜡笔小新啦 2013-02-25
  • 打赏
  • 举报
回复
时间复杂度是O(n)
a707000646 2013-02-25
  • 打赏
  • 举报
回复
引用 2 楼 HuiyuYang_fish 的回复:
这个知道吧: C/C++ code?1234567int f(unsigned int n){ type res =1; for (; n > 1; n--) res *= n; return res;}
恩恩知道 递归本来就是可以转化成为非递归的,只是答案是n!级别的,所以有些困惑。
a707000646 2013-02-25
  • 打赏
  • 举报
回复
引用 1 楼 dbhme 的回复:
递归求n!啊,O(n)时间复杂度
我的答案是o(n!)所以我才很困惑,为了求精确才发出来让大家看看。
dbhme 2013-02-24
  • 打赏
  • 举报
回复
递归求n!啊,O(n)时间复杂度

33,007

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧