并行算法的一般设计策略.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章并行算法的一般设计策略 习题例题: 1 、令 n 是待排序的元素数, p =2 d 是 d 维超立方中处理器的数目。假定开始随机选定主元 x,并将其播送给所有其他处理器,每个处理器按索接收到的 x,对其 n/p 个元素按照≤ x 和> x 进行划分,然后按维进行交换。这样在超立方上实现的快排序算法如下: 算法 5.6 超立方上快排序算法 输入: n 个元素, B= n/p ,d =log p 输出: 按超立方编号进行全局排序 Begin (1) id=processor ’ slabel (2) for i=1 to ddo (2.1) x=pivot/* 选主元 */ (2.2) 划分 B 为 B1 和 B2 满足 B1≤ B<B2 (2.3) if 第 i 位是零 then 沿第 i 维发送 B2 给其邻者 (ii)C= 沿第 i 维接收的子序列 (iii)B=B 1∪ C else 沿第 i 维发送 B1 给其邻者 (ii)C= 沿第 i 维接收的子序列 (iii)B=B 2∪ C endif endfor (3) 使用串行快排序算法局部排序 B= n/p 个数 End ①试解释上述算法的原理。 ②试举一例说明上述算法的逐步执行过程。 2 、①令 T=babaababaa 。 P=abab ,试用 算法 5.4 计算两者的匹配情况。 ②试分析 KMP 算法为何不能简单并行化。 3 、给定序列( 33 ,21 ,13 ,54 , 82 ,33 ,40 , 72 )和 8 个处理器,试按照 算法 5.2 构造 一棵为在 PRAM-CRCW 模型上执行快排序所用的二叉树。 4 、计算 duel( p ,q )函数的算法如下: 算法 5.7 计算串匹配的 duel( p ,q )的算法 输入: WIT 〔1:n-m+1 〕, 1 ≤p < q ≤n-m+1 , (p - q )< m/2 输出: 返回竞争幸存者的位置或者 null (表示 p 和 q 之一不存在) Begin if p =null then duel= qelse if q =null then duel= pelse j= q - p+1 w=WIT( j) if T(q + w-1) ≠P(w )then (i)WIT( q )= w (ii)duel= p else (i)WIT( p )= q –p+1 (ii)duel= q endif endif End ①令 T=abaababaababaababababa 。P=abaababa ,试计算 WIT( i); ②试考虑 P=6 , q=9 的竞争情况。 5 、对于 图 5.2(a) 的加权有向图,试用 算法 5.5 ,逐步求出 D 2 , D 4 和 D 8 中各元素 dijk : d 002 d012 d022 d 032 d042 d 052 d062 d002 d012 d022 d 032 d042 d 052 d062 d102 d112 d122 d132 d142 d152 d162 d102 d112 d122 d132 d142 d152 d162 d 602 d612 d622 d 632 d642 d 652 d662 d602 d612 d622 d 632 d642 d 652 d662 (a) D2 (b) D 4 d 002 d012 d022 d 032 d042 d 052 d062 d102 d112 d122 d132 d142 d152 d162 d 602 d612 d622 d 632 d642 d 652 d662 (a)D 8 小结 设计并行算法是一件复杂的事, 而并行算法的设计这门学科还属于发展中的一门 学科,所以目前尚无一套普遍适用的、 系统的设计方法学。 本章只是给出一个非 常一般的并行算法的设计方法,它不可能也不应该视为设计并行算法的全部方 法。重要的是,通过所介绍的设计方法的学习, 希望读者能从中得到更多的启迪, 补充更多的算例,丰富、完善乃至开拓出更新更好的设计方法。

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档