ImageVerifierCode 换一换
格式:PPT , 页数:29 ,大小:1.52MB ,
资源ID:804148      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-804148.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(7第七章 时空权衡(课件).ppt)为本站会员(无敌)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

7第七章 时空权衡(课件).ppt

1、杨春明西南科学技大学计算机学院,算法分析与设计 Analysis and Design of Computer Algorithms第七章 时空权衡Space and Time Tradeoffs,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,2,教学内容,时空权衡的方法计数排序串匹配中的输入增强技术散列法B树要求掌握时空权衡的概念及基本方法,掌握时空权衡的方法在常见问题中的应用。,http:/www.mryang.org/, School of Computer Science and Tech

2、nology, SWUST,3,时空权衡,时空权衡是指在算法的设计中,对算法的时间和空间作出权衡。常见的以空间换取时间的方法有:输入增强计数排序,串匹配算法的改进预构造散列法,B树动态规划,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,4,计数排序,思路:针对待排序列表中的每一个元素,算出列表中小于该元素的元素个数,把结果记录在一张表中。,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,5,计数排序算法

3、,算法 ComparisonCountingSort(A0.n-1)for(i0 to n-1) Counti0;for(i0 to n-1) for(ji+1 to n-1) if(AiAj) CountjCountj+1; else CountiCounti+1;for(i0 to n-1) SCountiAi;return S;,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,6,计数排序算法分析,技术排序算法在一种情况下还是卓有成效的,即待排序元素的值都来自一个已知的小集合。如果元素的值是来

4、自位于l,u之间的整数,我们可以计算出这些值出现的频率,然后把它们存在数组F0.u-l中。然后把有序列表的前F0个位置填l,接下来的F1个位置填入l+1.,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,7,计数排序算法分析实例,算法 DistributionCountingt(A0.n-1)for(j0 to u-l) Dj0;for(i0 to n-1) DAi-lDAi-l+1;for(ji+1 to u-l) DjDj-1+Dj;for(in-1 downto 0) jAj-l; SDj-1

5、Ai; DjDj-1;return S;,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,8,串匹配中的输入增强技术,串匹配中的输入增强思想对模式进行预处理,得到它的一些信息,然后在查找的过程中使用这些信息。两种著名算法Knuth-Morris-PartBoyer-Moore,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,9,Horspool算法,考虑在某些文本中查找模式BARBER,s0s1 . c

6、. sn-1,BARBER,移动幅度等于模式长度,移动幅度等于模式长度,模式中最右边的字符c和文本中的c对齐,把模式中前m-1个字符中的c和文本中的c对齐,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,10,Horspool算法中模式的移动距离,对于每一个字符c,移动距离t(c)为:,例如:对于模式BAEBER,E,B,R,A的移动距离分别为1,2,3,4,其他的为6,算法 ShiftTable(P0.m-1)/用Horspool算法和Boyer-Moore算法填充移动表/输入:模式p0.m-1以

7、及一个可能出现字符的字符表/输出:以字母表中字符为索引的数组table0.size-1把Table中的所有元素初始化为m;for(j0 to m-2 ) do TablePjm-1-j;return Table;,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,11,Horspool算法,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,12,Horspool算法,Horspool算法的最差效率(mn)对于

8、随机文本,它的效率为(n),http:/www.mryang.org/, School of Computer Science and Technology, SWUST,13,Boyer-Moore算法,如果在遇到一个不匹配字符之前,如果已经有k(0k0个成功匹配的字符所确定。称为好后缀移动把模式的结尾部分叫做模式的长度为k的后缀,记作suff(k)情况1:当模式中存在两个以上suff(k)的情况时,移动距离d2就是从有数到第二个suff(k)到最右边的距离。,http:/www.mryang.org/, School of Computer Science and Technology,

9、SWUST,16,Boyer-Moore算法,情况2:当模式中存在1个suff(k)的情况时:,k=3移动6,k=3移动?次,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,17,Boyer-Moore算法,为了避免情况2的出现,我们需要找出长度为l0的B树来说,有:,http:/www.mryang.org/, School of Computer Science and Technology, SWUST,29,第七章小结,空间换时间技术有两种主要的类型:输入增强和预构造。分布计数是一种特殊方法,用来对元素取值来自于一个小集合的列表排序。串匹配的Horspool算法是Boyer-Moore算法的简化,都以输入增强技术为基础,且从右向左比较模式中的字符。散列是一种非常高效的实现字典的方法,分为开散列和闭散列,其中必须采用碰撞解决机制。B树是一棵平衡查找树。,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报