考研题,求时间复杂度,请说明下理由,谢谢

假定问题规模为N时,某递归算法的时间复杂度记为T(N),已知T(1)=1,T(N)=2T(N/2)+N/2,用O表示的时间复杂度为()AO(N)BO(NlogN)CO(N... 假定问题规模为N时,某递归算法的时间复杂度记为T(N),已知T(1)=1,T(N)=2T(N/2)+N/2,用O表示的时间复杂度为()
A O(N) B O(NlogN) C O(N²) D O(N²logN)
展开
 我来答
红专并进
2012-12-25 · TA获得超过905个赞
知道答主
回答量:162
采纳率:0%
帮助的人:79万
展开全部
答案是B
根据条件递推:
T(N) = N/2+2T(N/2) = N/2+2*(N/4+2T(N/4)) = N/2 + N/2 + 4T(N/4)
= N/2 + N/2 + N/2 + 8T(N/8) = .......
可见 N 每次除2,是按 log 递减的,所以在 logN 次以后减为1,又因为T(1)=1,
所以一共有 logN 个 N/2
也就是 N/2 * logN
所以答案是 O(NlogN) 。
上海桦明教育科技
2024-12-15 广告
考研需准备的资料主要包括:考试大纲及历年真题,以明确考试范围和题型;目标院校的招生简章和专业目录,了解录取要求和招生人数;个人身份证件、学历证书及学生证(应届生)等报名材料;以及高质量的辅导书籍和笔记,帮助系统复习知识点。此外,还应准备错题... 点击进入详情页
本回答由上海桦明教育科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式