77范文网 - 专业文章范例文档资料分享平台

《计算机算法基础》第三版_课后习题答案(3)

来源:网络收集 时间:2019-04-02 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

6.4.①证明算法OBST的计算时间是O(n2)。

②在已知根R(i, j),0≤i < j≤4的情况下写一个构造最优二分检索树T的算法。证明这样的树能在O(n)时间内构造出来。

解:① 将C中元素的加法看做基本运算,则算法OBST的时间复杂性为:

nn?mnn?m??(R(i?1,j)?R(i,j?1)?1)???(R(i?1,i?m)?R(i,i?m?1)?1)?m?2i?0m?2i?0n?m?2(R(n?m?1,n)?R(0,m?1)?n?m?1)?O(n2)

② Procedure BuildTree(m, n, R, Root)

integer R(n,n), k

TreeNode Root, LR, RR k←R(m,n)

if k≠0 then data(Root)←k,

BuileTree(m, k-1, R, LR), BuileTree(k, n, R, RR)

left(Root)←LR, right(Root)←RR

else data(Root)←m, left(Root)←null, right(Root)←null, endif

end BuildTree

时间复杂性分析:T(n)=c+T(k)+T(n-k-1),此递推式保证算法的时间复杂性为O(n),也可从递归的角度出发,递归的次数正是结点的个数,而每次递归时间复杂性为常数,所以算法的时间复杂度也为O(n)。

6.8.给出一个使得DKNAP(算法6.7)出现最坏情况的例子,它使得|Si|=2i, 0≤i

解:取(P1,P2,?,Pi,?)=(W1,W2,?,Wi,?)=(20,21,?,2i-1,?)

P和W取值相同,使支配原则成立,也就是说不会因为支配原则而删除元素;只要说明不会出现相同元素被删除一个的情形,即可知是最坏的情况。可用归纳法证明此结论。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《计算机算法基础》第三版_课后习题答案(3)在线全文阅读。

《计算机算法基础》第三版_课后习题答案(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/566399.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: