并行计算试题及复习资料

合集下载

并行计算期末试题及答案

并行计算期末试题及答案

并行计算期末试题及答案1. 基础概念部分并行计算是一种计算模式,它使用多个处理单元同时执行计算操作,以加快计算速度。

在现代计算机系统中,我们常常使用多核处理器、图形处理器(GPU)或者分布式系统来实现并行计算。

1.1 并行计算的优势并行计算具有以下几个优势:加速计算速度:通过同时执行多个计算任务,可以极大地提高计算效率。

解决大规模问题:并行计算可以处理大规模和复杂的问题,提供更精确的结果。

降低能耗:通过合理利用处理器资源,可以降低计算任务的能耗。

应用广泛:并行计算可以应用于各个领域,如科学计算、大数据分析、机器学习等。

1.2 并行计算的分类并行计算按照任务之间的关系可以分为两类:数据并行:将数据划分为多个子集,同时在不同的处理器上进行计算,然后将计算结果汇总。

常见的应用包括矩阵运算、图像处理等。

任务并行:将任务划分为多个子任务,每个子任务由一个独立的处理器执行,最后将各个子任务的结果合并。

常见的应用包括并行搜索算法、并行排序等。

2. 并行计算的算法设计2.1 并行算法设计要点在设计并行算法时,需要考虑以下几个要点:任务划分:将计算任务划分为多个子任务,确保各个子任务之间的计算工作均衡,并保持任务之间的独立性。

任务调度:合理安排各个处理器上的任务执行顺序和时间,最大程度地减少通信开销和等待时间。

数据通信:处理器之间需要进行数据交换和通信,应选择合适的通信方式,并考虑通信延迟和带宽等因素。

数据同步:在多个处理器之间,可能需要进行数据同步操作,确保各个处理器之间的数据一致性。

2.2 并行算法实例:并行矩阵乘法并行矩阵乘法是一个常见的数据并行算法,可以有效地利用多核处理器加速大规模矩阵运算。

具体算法如下:步骤1:将输入矩阵划分为若干个小矩阵,每个小矩阵分配给一个处理器。

步骤2:每个处理器计算相应小矩阵的部分结果。

步骤3:将各个处理器计算得到的部分结果进行求和,得到最终的矩阵乘积结果。

3. 并行计算的应用举例3.1 科学计算在科学计算领域,有大量的计算任务需要处理大规模的数据和复杂的数学模型。

并行计算-习题及答案-第12章 并行程序设计基础

并行计算-习题及答案-第12章 并行程序设计基础

第十二章 并行程序设计基础习题例题:1、假定有n 个进程P(0),P(1),…,P(n -1),数组元素][i a 开始时被分配给进程P(i )。

试写出求归约和]1[]1[]0[-+++n a a a 的代码段,并以8=n 示例之。

2、假定某公司在银行中有三个账户X 、Y 和Z ,它们可以由公司的任何雇员随意访问。

雇员们对银行的存、取和转帐等事务处理的代码段可描述如下:/*从账户X 支取¥100元*/atomic {if (balance[X] > 100) balance[X] = balance[X]-100; }/*从账户Y 存入¥100元*/atomic {balance[Y] = balance[Y]-100;}/*从账户X 中转¥100元到帐号Z*/atomic {if (balance[X] > 100){balance[X] = balance[X]-100;balance[Z] = balance[Z]+100;} }其中,atomic {}为子原子操作。

试解释为什么雇员们在任何时候(同时)支、取、转帐时,这些事务操作总是安全有效的。

3、考虑如下使用lock 和unlock 的并行代码:parfor (i = 0;i < n ;i++){noncritical sectionlock(S);critical sectionunlock(S);}假定非临界区操作取T ncs时间,临界区操作取T cs时间,加锁取t lock时间,而去锁时间可忽略。

则相应的串行程序需n( T ncs + T cs )时间。

试问:①总的并行执行时间是多少?②使用n个处理器时加速多大?③你能忽略开销吗?4、计算两整数数组之内积的串行代码如下:Sum = 0;for(i = 0;i < N;i++)Sum = Sum + A[i]*B[i];试用①相并行;②分治并行;③流水线并行;④主-从行并行;⑤工作池并行等五种并行编程风范,写出如上计算内积的并行代码段。

并行算法考试题

并行算法考试题

1、名词解释:(1)等分宽度:把网络划分为两个相等的部分(节点数之多差1),所需要去掉的网络边的条数。

(2)网络直径:网络中两个节点之间的最远的距离(3)并行运行时间:从第一台处理机开始执行任务开始,到最后一台处理机执行完任务所经历的时间。

(4)并行步:能够同时执行的操作数。

(5)加速比:同一任务在串行计算下的运行时间/并行计算下的运行时间。

2、介绍超立方体网络互连方式的性能指标解答:q维超立方体,等分宽度为2q-1,网络直径:q,网络接口数:q3、按照指令流和数据流,并行计算机可以分为哪些类型?各自适合什么样的并行计算?排名在前20的计算机都是什么类型的计算机?它们的区别是什么?解答:(1)SIMD:适合指令/操作级并行(2)MIMD:适合块、回路或子程序级的并行4、并行算法有哪些设计方法?(1)流水线技术(2)分而治之策略(3)平衡二叉树方法(4)倍增技术(5)加速级联策略5、举例说明平衡树方法的原理?参考:使用n/2台计算机,可以在⎡⎤nlog步完成运算。

26、Logp模型有哪些参数?BSP模型有哪些参数?这两个模型之间的关系是什么?(1) L :源处理机与目标处理机之间进行消息通信所需要等待的延迟时间上限(2) o :处理机用于发送或接收每个消息的时间开销(3) g :连续发送/接收消息的时间间隙(4) P :处理机个数BSP 模型:(1) P :处理机数(2) g :选路器吞吐率(3) L :全局同步之间的时间间隔关系:(1) 本质上等效,可以相互模拟(2) 用BSP 模拟LOGP 所进行的计算时,通常会慢常数倍。

(3) 反之,慢对数倍7、 题目记不清了,只要知道两个公式就可以了,对于logp :L+2o 对于logGp :t α+t β8、 计算加速比和效率的题,具体记不清了,只要会使用公式就可以了。

9、 关于群集系统中QR 分解的题目。

将矩阵的行列都分成5等分,得到它的25个任务,按照贪婪算法的调度思想,画出子任务执行的并行步。

并行计算题目答案汇总

并行计算题目答案汇总

!第1题(1)什么是并行计算(2)它的优点有哪些(3)可以通过哪些结构完成并行计算1.并行计算就是在并行计算或分布式计算机等高性能计算系统上所做的超级计算。

(P3)2.计算极大地增强了人们从事科学研究的能力,大大地加速了把科技转化为生产力的过程,深刻地改变着人类认识世界和改造世界的方法和途径。

计算科学的理论和方法,作为新的研究手段和新的设计与创造技术的理论基础,正推动着当代科学与技术向纵深发展。

(P4)3.单指令多数据流SIMD、对称多处理机SMP、大规模并行处理机MPP、工作站机群COW、分布共享存储DSM多处理机。

(P22)第2题什么是网络计算它的特点它与分布式计算、集群计算的关系(P104)网络计算:在工作站机群COW环境下进行的计算称为网络计算。

特点:网络计算结合了客户机/服务器结构的健壮性、Internet面向全球的简易通用的数据访问方式和分布式对象的灵活性,提供了统一的跨平台开发环境,基于开放的和事实上的标准,把应用和数据的复杂性从桌面转移到智能化的网络和基于网络的服务器,给用户提供了对应用和信息的通用、快速的访问方式。

与分布式计算、集群计算的关系:,分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。

集群计算是使用多个计算机,如典型的个人计算机或UNIX工作站;多个存储设备;冗余互联,来组成一个对用户来说单一的高可用性的系统。

因此,网络计算与分布式计算和集群计算都是属于计算密集型,数据密集型和网络密集型应用。

第3题表征并行系统的性能指标有哪些并行系统的加速比如何定义它能否完全确定系统的性能为什么a.表征并行系统的性能指标主要有:CPU和存储器的基本性能指标,通信开销以及系统机器的成本、价格与性价比,还有系统加速比和系统可扩放性(p88页);其中CPU和存储器的基本性能指标包括:工作负载,并行执行时间,存储器的层次结构和存储器的带宽。

并行计算的参考题目

并行计算的参考题目

并行计算的参考题目1、讨论某一种算法的可扩放性时,一般指什么?88答:讨论某一种算法的可扩放性时,实际上是指该算法针对某一特定机器结构的可扩放性2、使用“Do in Parallel”语句时,表示的是什么含义105答:表示算法的若干步要并行执行3、并行计算机的存储访问类型有哪几种?26答:存储访问类型有:UMA(均匀存储访问)、NUMA(非均匀存储访问)、COMA(全高速缓存存储访问)、CC-NUMA(高速缓存一致性非均匀存储访问)、NORMAl(非远程存储访问)4、什么是同步?它有什么作用?如何实现?107答:同步是在时间上强使各执行进程在某一点必须相互等待。

作用:确保个处理器的正确工作顺序以及对共享可写数据的正确访问(互斥访问)。

实现方法:用软件、硬件和固件的方法实现。

5 在并行加速比的计算中,常用的三种加速比定律分别是哪三种?(P83)答:常用的三种加速比定律分别是:适用于固定计算负载的Amdahl定律,适用于可扩放问题的Gustafson定律和受限于存储器的Sun和Ni定律。

6、试比较Amdahl定律、Gustafson定律、Sun和Ni定律三种加速定律的应用场合。

83 答:Amdahl定律适用于固定计算负载的问题Gustafson定律适用于可扩放性问题Sun和Ni定律适用于受限于存储器的问题。

7.并行算法的基本设计技术有哪些?它们的基本思想是什么?139答:(1)基本技术有:划分设计技术(又分为均匀划分技术、方根划分技术、对数划分技术和功能划分技术)、分治设计技术、平衡树设计技术、倍增设计技术、流水线设计技术等。

(2)基本思想分别如下:a.划分设计技术:(P139) 将一原始问题分成若干部分,然后各部分由相应的处理器同时执行。

b.分治设计技术:(P144)将一个大二复杂的问题分解成若干特性相同的子问题分而治之。

若所得的子问题规模仍嫌过大,可反复使用分治策略,直至很容易求解诸子问题为止。

并行计算习题(全)

并行计算习题(全)

第二章 习题例题:
1.
当代并行计算机系统介绍
请尽可能访问以下有关高性能并行计算的网址: IEEE/CS ParaScope (/parascope/),world-wide parallel computing sites High Performance Computing Lists (/homes/mcbryan/public_html/bb/2/summary.html) The Language List (http://cuiwww.unige.ch/langlist) enumerate programming languages TOP 500 (/benchmark/top500.html) World's TOP 500 most powerful computing sites (at Netlib,University of Tennessee) Myrinet () DSM bibliography (http://www.cs.ualberta.ca/~rasit/dsmbiblio.html) Berkeley Active Message page (/AM/active_messages.html) The Cray Research system page (/products/systems/) SGI/Cray Origin 2000 (/Products/hardware/servers/index.html) Cray T3E (/products/systems/crayt3e/) PetaFLOPS web site (/hpcc/) NASA HPCC Program (/hpcc/) Cray T3E (/products/systems/crayt3e/) IBM SP (/hardware/largescale/) Intel Paragon (/Services/ Consult/Paragon/paragon.html) Kai Li (/~li/) SP2 at MHPCC (/doc/SP2.general/SP2.general.html) MPI Standard site (/mpi/index.html) MIT Parallel and Distributed Operating Systems Group (/). National Center for Supercomputer Applications at UIUC (NCSA) (/) Cornell Theory Center (CTC) (/ctc.html) Argonne Natl Laboratory,Mathematics & Computer Science Div. (/) Army Research Lab (/) Lawrence Livermore National Laboratory (/comp/comp.html) Los Alamos Natl Laboratory (LANL) Advanced Computing Laboratory (/). Maui High Performance Computing Center (MHPCC) (/mhpcc.html) San Diego Supercomputer Center (/SDSCHome.html) Sandia National Laboratories (/) Massively Parallel Comp. Res. Lab. Parallel Processing in Japan (/papers/ppij.html) Cray Research (/) IBM High-Performance Computing (/) ParaSoft Corporation (/)

并行计算与高性能计算考核试卷

并行计算与高性能计算考核试卷
D. CPU
(以下为答题纸区域,请考生在此区域作答,超出此区域作答无效。)
三、填空题(本题共10小题,每小题2分,共20分,请将正确答案填到题目空白处)
1.并行计算中,将一个大的任务分解成多个子任务的过程称为______。
2.在并行计算中,______是指使用多个处理器执行单个任务的不同部分。
3.高性能计算中,______是一种衡量计算机性能的指标,表示每秒能够执行的浮点运算次数。
C. CUDA
D. Java
5.并行计算中,任务分解与任务分配是()
A.相同的过程
B.互相独立的
C.相互依赖的
D.无关的
6.以下哪个部件不是并行计算机的主要组成部分?()
A.处理器
B.存储器
C.网络接口卡
D.显卡
7.高性能计算领域中,计算速度的主要指标是()
A. MIPS
B. MFLOPS
C. GHz
D. OpenCL
11.并行计算中,以下哪种通信方式开销最小?()
A.同步通信
B.异步通信
C.广播通信
D.全局通信
12.以下哪个术语不是高性能计算中的术语?()
A.性能
B.效能
C.并行度
D.带宽
13.并行计算中,以下哪种同步机制可能会导致死锁?()
A.互斥锁
B.条件变量
C.信号量
D.读写锁
14.以下哪个选项不属于并行计算中的数据依赖类型?()
3. MFLOPS
4.点对点
5.数据并行
6.可扩展性
7.图形处理单元
8.互斥锁
9. SRAM
10.并发
四、判断题
1. ×
2. ×
3. √

并行计算考试内容(安工大)

并行计算考试内容(安工大)
1.并行计算具体的计算方法?
a)将被求解的问题分解为若干部分
b)每个部分分别由不同的处理器同时进行计算
2.并行计算能力的衡量单位?
计算能力的衡量单位(flops);
存储能力的衡量单位(bytes)
3.高性能计算解决的问题?
高性能计算机用来解决国民经济建设、社会发展进步、国防建设与国家安全等方面一系列的挑战性的计算问题
4.将程序并行化的目的?
程序并行化可以加快执行速度,减少执行时间,满足问题需要的内存需求
5.当代科学与工程的研究方法?
理论研究→科学实验→计算技术,三者的融合使现代科学技术迅速发展,计算科学的发展使理论研究更加深入,科学实验的速度加快、成本降低
6.大型计算系统一般分为哪六类?
①单指令多数据流SIMD、②并行向量处理机PVP、③对称多处理机SMP、④大规模并行处理机MPP、⑤工作站机群COW、⑥分布共享存储多处理机DSM。
处理机之间协同解决问题需要数据传输和同步
1)有两个或多个处理机
2)共享主存或高速通信网络
3)共享输入输出子系统
4)有单一完整的操作系统
5)各级硬件和软件相互作用
10.并行计算应用的主要形式?
数值计算、非数值计算
计算密集型应用、数据密集型应用、网络密集型应用
11.并行计算的战略地位?
从战略高度上讲,它是一个国家综合国力的体现,是支撑国家实力持续发展的关键技术之一,在国家安全、高技术发展和国民经济建设中占有重要的地位。正是因为如此,世界各发达国家非常重视高性能并行计算的发展。
End
24.超标量处理器的并行度等于系统中功能单元的个数,由于不同指令可以同时执行,称指令级并行(ILP)
超标量处理器执行时的最大的问题是执行相关包括数据相关和指令相关。提高ILP的方法:1、采用超长指令字2、采用向量指令
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机学院研究生《并行计算》课程考试试题(2010级研究生,2011.1)1.(12分)定义图中节点u 和v 之间的距离为从u 到v 最短路径的长度。

已知一个d 维的超立方体,1)指定其中的一个源节点s ,问有多少个节点与s 的距离为i ,其中0≤i ≤d 。

证明你的结论。

2)证明如果在一个超立方体中节点u 与节点v 的距离为i ,则存在i !条从u 到v 的长度为i 的路径。

1)有id C 个节点与s 的距离为i 。

证明:由超立方体的性质知:一个d 维的超立方体的每个节点都可由d 位二进制来表示,则与某个节点的距离为i 的节点必定在这d 位二进制中有i 位与之不同,那么随机从d 位中选择i 位就有id C 种选择方式,即与s 的距离为i 得节点就有id C 个。

2)证明:由1)所述可知:节点u 与节点v 的距离为i 则分别表示u 、v 节点的二进制位数中有i 位是不同的。

设节点u 表示为:121D .........j j i j i d D D D D D +-+,节点v 表示为:''121D .........j j i j i dD D D D D +-+,则现在就是要求得从121D .........j j i j i d D D D D D +-+变换到''121D .........j j i j i d D D D D D +-+ 的途径有多少种。

那么利用组合理论知识可知共有*(1)*(2)*...*2*1i i i --即!i 中途径。

所以存在i !条从u 到v 的长度为i 的路径。

2.(18分)6个并行程序的执行时间,用I-VI 表示,在1-8个处理器上执行了测试。

下表表示了各程序达到的加速比。

对其中的每个程序,选出最适合描述其在16个处理器上性能的陈述。

a ) 在16个处理器上的加速比至少比8个处理器上的加速比高出40%。

b ) 由于程序中的串行程序比例很大,在16个处理器上的加速比不会比8个处理器上的加速比高出40%。

c ) 由于处理器增加时开销也会很大,在16个处理器上的加速比不会比8个处理器上的加速比高出40%。

给出分析过程和结论。

3. (10分)经测试发现,1)一个串行程序,94%的执行时间花费在一个可以并行化的函数中。

现使其并行化,问该并行程序在10个处理机上执行所能达到的加速比是多少?能达到的最大加速比是多少?2)一个并行程序,在单个处理机上执行,6%的时间花费在一个I/O 函数中,问要达到加速比10,至少需要多少个处理机? 1)由Amdahl 定律知:加速比1(1)/Speedup f f p=+-依题意知:6%,10f p ==代入计算得:16.4994%6%10Speedup =≈+最大加速比为:111lim lim16.7(1)/6%p pSpeedupf f p f→∞→∞===≈+-2)由题意知:此时的串行时间比例为6%则:由式子111094%(1)/6%f f pp≤=+-+得:23.5p≥故至少需要24台处理机。

4.(12分)将一个由256个节点组成的环以dilation-1的方式嵌入到一个8维超立方体里,环中的节点编号为0~255,1)问环节点31,127,255分别映射到超立方体的哪个节点上?2)若超立方体中的结点10110011和进行通讯,如果按照环网拓扑结构,从出发,在超立方体中依次经过哪些节点才能把一条消息传递到?如果按照超立方体拓扑结构,又是如何实现从传递一条消息到的?5.(16分)已知12个具有单位执行时间的任务,任务图如下。

现在3个处理机上处理该任务集,请用Coffman-Graham算法求该任务集的调度优先表L,并用Graham表调度算法调度L,给出任务调度的Gantt图表示。

6.(10分)采用与前序遍历二元树的PRAM算法相同的数据结构,设计一个后序遍历二元树的PRAM算法。

7.(10分)下面是一个串行程序段,用OpenMP最大限度地开发其并行性。

这里假设a、b均为正实值数组,有合法的定义。

float rowterm[m]float colterm[q];int i, j;#pragma omp parallel {#pragma omp sections{#pragma omp parallel for private(j)for ( i=0; i<m; i++) {rowterm[i] = 0.0;#pragma omp parallel for reduction(+:rowterm[i])for (j=0; j<p; j++)rowterm[i] += a[i][2*j] * a[i][2*j+1];#pragma omp parallel forfor (j=0; j<p; j++) {a[i][2*j] /= rowterm[i];a[i][2*j+1] /= rowterm[i];}}}#pragma omp sections{#pragma omp parallel for private(j)for ( i=0; i<q; i++) {colterm[i] = 0.0;#pragma omp parallel for reduce(+:colterm [i])for ( j=0; j<p; j++)colterm[i] += b [2*j][i] * b [2*j+1] [i];#pragma omp parallel forfor ( j=0; j<p; j++) {b [2*j][i] /= colterm[i]; b [2*j+1] [i] /= colterm[i];}} } }8.(12分)查阅文献并结合自己的体会,列举1-2个你的研究领域里存在的典型并行计算应用,讨论一下它们适合的并行计算模式(不少于500字)。

答案1. 证明:(1)由超立方体的性质知: 一个d 维的超立方体的每个节点都可由d 位二进制来表示,则与某个节点的距离为i 的节点必定在这d 位二进制中有i 位与之不同,那么随机从d 位中选择i 位就有id C 种选择方式,即与s 的距离为i 得节点就有id C 个。

(2)由(1)所述可知:节点u 与节点v 的距离为i 则分别表示u 、v 节点的二进制位数中有i 位是不同的。

设节点u 表示为:121D .........j j i j i d D D D D D +-+,节点v 表示为:''121D .........j j i j i dD D D D D +-+,则现在就是要求得从121D .........j j i j i d D D D D D +-+变换到''121D .........j j i j i d D D D D D +-+ 的途径有多少种。

那么利用组合理论知识可知共有*(1)*(2)*...*2*1i i i --即!i 中途径。

所以存在i !条从u 到v 的长度为i 的路径。

2. 解: 由题可知计算规模是固定的,所以在并行环境下,根据Amdahl 定律可知: 加速比S=1/(1/p+f(1-1/p)),其中p 为处理器数,f 为串行分量的比例,则,f=(p/s-1)/(p-1),同时对于固定规模的问题,并行系统所能达到的加速上限为1/f ,即受到串行分量的比例的限制。

在2个处理器的环境下,根据上图数据计算各并行程序的串行分量的比:并行程序I :f 1=0.20; 并行程序II :f 2=0.06; 并行程序III :f 3=0.06; 并行程序IV :f 4=0.02; 并行程序V :f 5=0.15; 并行程序VI :f 6=0.03;在16个处理器的环境下,根据上图数据计算各并行程序的加速比如下: 并行程序I :S 1=4.00并行程序II :S 2=5.72; 并行程序III :S 3=8.41; 并行程序IV :S 4=10.00; 并行程序V :S 5=4.77; 并行程序VI :S 6=10.67;则个并行程序在16个处理器的环境下与8个处理器的环境下的加速比提高了:并行程序I :d 1=20%; 并行程序II :d 2=31%; 并行程序III :d 3=49%; 并行程序IV :d 4=60%; 并行程序V :d 5=25%; 并行程序VI :d 6=64%;根据并行程序I 、V 的串行分量的比和16个处理器的环境下的加速比可知,对并行程序I 、V 在16个处理器上性能的陈述都选(b);根据并行程序II 和III 的串行分量的比和16个处理器的环境下的加速比可知,对并行程序II 在16个处理器上性能的陈述选(c);根据并行程序III 、IV 、VI 在16个处理器的环境下的加速比可知,对并行程序III 、IV 、VI 在16个处理器上性能的陈述都选(a);3. 1)由Amdahl 定律知:加速比1(1)/Speedup f f p=+-依题意知:6%,10f p ==代入计算得:16.4994%6%10Speedup =≈+最大加速比为:111lim lim16.7(1)/6%p pSpeedupf f p f→∞→∞===≈+-2)由题意知:此时的串行时间比例为6%则:由式子111094%(1)/6%f f pp≤=+-+得:23.5p≥故至少需要24台处理机。

4.(12分)将一个由256个节点组成的环以dilation-1的方式嵌入到一个8维超立方体里,环中的节点编号为0~255,1)问环节点31,127,255分别映射到超立方体的哪个节点上?31:00010000;127:01000000;255:10000000若超立方体中的结点和进行通讯,如果按照环网拓扑结构,从出发,在超立方体中依次经过哪些节点才能把一条消息传递到?如果按照超立方体拓扑结构,又是如何实现从传递一条消息到0101 1001的?1011 0011: 2210101 1001:1101011 0011(221)->1011 0001(222)->1011 0000(223)->1001 0000(224)->1001 0001->……->1000 0000(255)->0000 0000(0)->0000 0001->…..->0101 1100(104)->0101 1101(105)->0101 1111(106)->0101 1110(107)->0101 1010(108)->0101 1011(109)->0101 1001(110)1011 0011->1011 0001->1011 1001->1001 1001->1101 1001->0101 1001(第一种方法)1011 0011->0011 0011->0111 0011->0101 0011->0101 1011->0101 1001(第二种方法)1101 0011->1001 0011->1101 0011->0101 0011->0101 0001->0101 1001(第三种方法)5.Step1:R={T11,T12}是无直接后继的任务,任取,选T12,有a(T12)<-1;Step2:i从2到12循环,完成对a(Tj)(j=1,2…12)赋值i=2;R={T11,T10},N(T10)={1},N(T10)={0},选T11,则a(T11)<-2;i=3; R={T9,T6,T10},N(T9)=2,N(T6)={2,1},N(T10)=1,选T10则a(T10)<-3;i=4;R={T9,T6,T7,T8},N(T9)=2,N(T6)={2,1},N(T7)=3,N(T8)=3,T9,T6任选,选T6,a(T6)<-4;i=5;R={T9,T7,T8},N(T9)=2,N(T7)=3,N(T8)=3,选T9,则a(T9)<-5;i=6;R={T4,T5,T7,T8},N(T4)=5,N(T5)=5,N(T7)=3,N(T8)=3,任选T7,T8,选T7,则a(T7)<-6;i=7;R={T4,T5,T8},N(T4)=5,N(T5)=5,N(T8)=3,选T8,则a(T8)<-7;i=8;R={T4,T5,T3},N(T4)=5,N(T5)=5,N(T3)={7,6},T4,T5任选,选T4,则a(T4)<-8 i=9,R={T5,T3},N(T5)=5,N(T3)={7,6},选T5,则a(T5)<-9;i=10,R={T2,T3},N(T2)={9,8,4},N{T3}={7,6},选T3,a(T3)<-10;i=11,R={T2},N(T2)={9,8,4},选T2,a(T2)<-11;i=12,a(T1)<-12;Step3:构造L表:L={T1,T2,T3,T5,T4,T8,T7,T9,T6,T10,T11,T12};Step4:6. 策略如下:在执行后序遍历时,我们系统地访问树中所有的边,而且每条边要通过两次:一次从父节点到子节点,而另一次从子节点到父节点。

相关文档
最新文档