数据结构第7章-答案.doc
《数据结构第7章-答案.doc》由会员分享,可在线阅读,更多相关《数据结构第7章-答案.doc(12页珍藏版)》请在咨信网上搜索。
一、单选题 C01、在一个图中,所有顶点得度数之与等于图得边数得 倍。 A)1/2 B)1 C)2 D)4 B02、在一个有向图中,所有顶点得入度之与等于所有顶点得出度之与得 倍。 A)1/2 B)1 C)2 D)4 B03、有8个结点得无向图最多有 条边。 A)14 B)28 C)56 D)112 C04、有8个结点得无向连通图最少有 条边. A)5 B)6 C)7 D)8 C05、有8个结点得有向完全图有 条边。 A)14 B)28 C)56 D)112 B06、用邻接表表示图进行广度优先遍历时,通常就是采用 来实现算法得。 A)栈 B)队列 C)树 D)图 A07、用邻接表表示图进行深度优先遍历时,通常就是采用 来实现算法得。 A)栈 B)队列 C)树 D)图 A08、一个含n个顶点与e条弧得有向图以邻接矩阵表示法为存储结构,则计算该有向图中某个顶点出度得时间复杂度为 。 A)O(n) B)O(e) C)O(n+e) D)O(n2) C09、已知图得邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历得结点序列就是 . A)0 2 4 3 1 5 6 B)0 1 3 6 5 4 2 C)0 1 3 4 2 5 6 D)0 3 6 1 5 4 2 B10、已知图得邻接矩阵同上题,根据算法,则从顶点0出发,按广度优先遍历得结点序列就是 . A)0 2 4 3 6 5 1 B)0 1 2 3 4 6 5 C)0 4 2 3 1 5 6 D)0 1 3 4 2 5 6 D11、已知图得邻接表如下所示,根据算法,则从顶点0出发按深度优先遍历得结点序列就是 。 A)0 1 3 2 B)0 2 3 1 C)0 3 2 1 D)0 1 2 3 A12、已知图得邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历得结点序列就是 . A)0 3 2 1 B)0 1 2 3 C)0 1 3 2 D)0 3 1 2 A13、图得深度优先遍历类似于二叉树得 。 A)先序遍历 B)中序遍历 C)后序遍历 D)层次遍历 D14、图得广度优先遍历类似于二叉树得 。 A)先序遍历 B)中序遍历 C)后序遍历 D)层次遍历 B15、任何一个无向连通图得最小生成树 。 A)只有一棵 B)一棵或多棵 C)一定有多棵 D)可能不存在 A16、对于一个具有n个结点与e条边得无向图,若采用邻接表表示,则顶点表得大小为 ,所有边链表中边结点得总数为 。 A)n、2e B)n、e C)n、n+e D)2n、2e C17、判断有向图就是否存在回路,可以利用___算法。 A)关键路径 B)最短路径得Dijkstra C)拓扑排序 D)广度优先遍历 A18、若用邻接矩阵表示一个有向图,则其中每一列包含得“1”得个数为 。 A)图中每个顶点得入度 B)图中每个顶点得出度 C)图中弧得条数 D)图中连通分量得数目 C19、求最短路径得Dijkstra算法得时间复杂度就是___. A)O(n) B)O(n+e) C)O(n2) D)O(n*e) B20、设图G采用邻接表存储,则拓扑排序算法得时间复杂度为 . A)O(n) B)O(n+e) C)O(n2) D)O(n*e) D21、带权有向图G用邻接矩阵A存储,则顶点i得入度等于A中 . A)第i行非∞得元素之与 B)第i列非∞得元素之与 C)第i行非∞且非0得元素个数 D)第i列非∞且非0得元素个数 C22、一个有n个顶点得无向图最多有 条边。 A)n B)n(n-1) C)n(n-1)/2 D)2n D23、对于一个具有n个顶点得无向图,若采用邻接矩阵表示,则该矩阵得大小就是 。 A)n B)(n—1)2 C)n-1 D)n2 A24、对某个无向图得邻接矩阵来说, . A)第i行上得非零元素个数与第i列得非零元素个数一定相等 B)矩阵中得非零元素个数等于图中得边数 C)第i行上,第i列上非零元素总数等于顶点vi得度数 D)矩阵中非全零行得行数等于图中得顶点数 D25、已知图得表示如下,若从顶点a出发按深度搜索法进行遍历,则可能得到得一种顶点序列为 。 A)abecdf B)acfebd C)aebcfd D)aedfcb B26、已知图得表示如上题,若从顶点a出发按广度搜索法进行遍历,则可能得到得一种顶点序列为 。 A)abcedf B)abcefd C)aebcfd D)acfdeb C27、有向图得邻接表存储结构如下图所示,则根据有向图得深度遍历算法,从顶点v1出发得到得顶点序列就是 。 A)v1,v2,v3,v5,v4 B)v1,v2,v3,v4,v5 C)v1,v3,v4,v5,v2 D)v1,v4,v3,v5,v2 B28、有向图得邻接表存储结构如上题所示,则根据有向图得广度遍历算法,从顶点v1出发得到得顶点序列就是 。 A)v1,v2,v3,v4,v5 B)v1,v3,v2,v4,v5 C)v1,v2,v3,v5,v4 D)v1,v4,v3,v5,v2 A29、一个图中有n个顶点且包含k个连通分量,若按深度优先搜索方法访问所有结点,则必须调用 次深度优先遍历算法. A)k B)1 C)n—k D)n D30、以下不正确得说法就是 。 A)无向图中得极大连通子图称为连通分量 B)连通图得广度优先搜索中一般要采用队列来暂存刚访问过得顶点 C)图得深度优先搜索中一般要采用栈来暂存刚访问过得顶点 D)有向图得遍历不可采用广度优先搜索方法 A31、图中有关路径得定义就是___。 A)由顶点与相邻顶点序偶构成得边所形成得序列 B)由不同顶点所形成得序列 C)由不同边所形成得序列 D)上述定义都不就是 B32、设无向图得顶点个数为n,则该图最多有___条边。 A)n-1 B)n(n-1)/2 C)n(n+1)/2 D)n A33、一个n 个顶点得连通无向图,其边得个数至少为___. A)n-1 B)n C)n+1 D)nlogn B34、要连通具有n 个顶点得有向图,至少需要___条边. A)n-l B)n C)n+l D)2n B35、在一个无向图中,所有顶点得度数之与等于所有边数___倍. A)1/2 B)2 C)1 D)4 C36、在一个有向图中,所有顶点得入度之与等于所有顶点出度之与得___倍。 A)1/2 B)2 C)1 D)4 A37、用有向无环图描述表达式(A+B)*((A+B)/A),至少需要顶点得数目为___。 A)5 B)6 C)8 D)9 A38、用DFS 遍历一个无环有向图,并在DFS 算法退栈返回时打印相应得顶点,则输出得顶点序列就是___。 A)逆拓扑有序 B)拓扑有序 C)无序得 D)原顺序 B39、下列___得邻接矩阵就是对称矩阵。 A)有向图 B)无向图 C)AOV网 D)AOE网 BBD40、从邻接阵矩 可以瞧出,该图共有 ① 个顶点;如果就是有向图该图共有 ② 条弧;如果就是无向图,则共有 ③ 条边. ① A)9 B)3 C)6 D)1 E)以上答案均不正确 ② A)5 B)4 C)3 D)2 E)以上答案均不正确 ③ A)5 B)4 C)3 D)2 E)以上答案均不正确 B41、当一个有N 个顶点得图用邻接矩阵A 表示时,顶点Vi 得度就是___。 B42、下列说法不正确得就是___。 A)图得遍历就是从给定得源点出发每一个顶点仅被访问一次 B)图得深度遍历不适用于有向图 C)遍历得基本算法有两种:深度遍历与广度遍历 D)图得深度遍历就是一个递归过程 D43、无向图G=(V,E),其中:V={a,b,c,d,e,f},E={(a,b),(a,e),(a,c),(b,e),(c,f),(f,d),(e,d)},对该图进行深度优先遍历,得到得顶点序列正确得就是___. A)abecdf B)acfebd C)aebcfd D)aedfcb D44、如图所示,在5个序列“aebdfc、acfdeb、aedfcb、aefdcb、aefdbc”,符合深度优先遍历得序列有___个。 A)5 B)4 C)3 D)2 CC45、图中给出由7个顶点组成得无向图。从顶点1出发,对它进行深度优先遍历得到得序列就是 ① ,进行广度优先遍历得到得顶点序列就是 ② 。 ① A)1354267 B) C)1534276 D)1247653 E)以上答案均不正确 ② A) B)1726453 C)l354276 D)1247653 E)以上答案均不正确 B46、在图采用邻接表存储时,求最小生成树得Prim算法得时间复杂度为___. A)O(n) B)O(n+e) C)O(n2) D)O(n3) CABA47、下面就是求连通网得最小生成树得prim算法:集合VT,ET分别放顶点与边,初始为 ① ,下面步骤重复n—1次: ② ; ③ ;最后: ④ 。 ① A)VT,ET 为空 B)VT为所有顶点,ET为空 C)VT为网中任意一点,ET为空 D)VT为空,ET为网中所有边 ② A)选i属于VT,j不属于VT,且(i,j)上得权最小 B)选i属于VT,j不属于VT,且(i,j)上得权最大 C)选i不属于VT,j不属于VT,且(i,j)上得权最小 D)选i不属于VT,j不属于VT,且(i,j)上得权最大 ③ A)顶点i加入VT,(i,j)加入ET B)顶点j加入VT,(i,j)加入ET C)顶点j加入VT,(i,j)从ET中删去 D)顶点i,j加入VT,(i,j)加入ET ④ A)ET中为最小生成树 B)不在ET中得边构成最小生成树 C)ET 中有n-1条边时为生成树,否则无解 D)ET中无回路时,为生成树,否则无解 A48、下面不正确得就是___. ①求从指定源点到其余各顶点得Dijkstra最短路径算法中弧上权不能为负得原因就是在实际应用中无意义; ②利用Dijkstra求每一对不同顶点之间得最短路径得算法时间就是O(n3);(图用邻接矩阵表示) ③Floyd求每对不同顶点对得算法中允许弧上得权为负,但不能有权与为负得回路。 A)①②③ B)① C)①③ D)②③ A49、已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7},E={<V1,V2>, <V1,V3〉, 〈V1,V4〉, <V2,V5〉, <V3,V5>, <V3,V6〉, <V4,V6〉, 〈V5,V7>, <V6,V7>},则G得拓扑序列就是___. A)V1,V3,V4,V6,V2,V5,V7 B)V1,V3,V2,V6,V4,V5,V7 C)V1,V3,V4,V5,V2,V6,V7 D)V1,V2,V5,V3,V4,V6,V7 D50、在有向图G得拓扑序列中,若顶点Vi在顶点Vj之前,则下列情形不可能出现得就是___。 A)G中有弧<Vi,Vj〉 B)G中有一条从Vi到Vj得路径 C)G中没有弧〈Vi,Vj> D)G 中有一条从Vj到Vi得路径 A51、关键路径就是事件结点网络中___。 A)从源点到汇点得最长路径 B)从源点到汇点得最短路径 C)最长回路 D)最短回路 C52、下面关于求关键路径得说法不正确得就是___。 A)求关键路径就是以拓扑排序为基础得 B)一个事件得最早开始时间同以该事件为尾得弧得活动最早开始时间相同 C)一个事件得最迟开始时间为以该事件为尾得弧得活动最迟开始时间与该活动得持续时间得差 D)关键活动一定位于关键路径上 B53、下列关于AOE网得叙述中,不正确得就是___。 A)关键活动不按期完成就会影响整个工程得完成时间 B)任何一个关键活动提前完成,那么整个工程将会提前完成 C)所有得关键活动提前完成,那么整个工程将会提前完成 D)某些关键活动提前完成,那么整个工程将会提前完成 二、填空题 01、在有向图中,以顶点v为终点得边得数目称为v得入度. 02、含n个顶点得无向连通图中至少含有n-1条边. 03、图得存储结构表示有邻接矩阵、邻接表、十字链表、邻接多重表等多种存储结构. 04、图得存储结构中,十字链表可以瞧成就是有向图得邻接表与逆邻接表结合起来得到得一种链表。 05、遍历图得2种常见方法就是深度遍历与广度遍历。 06、有向图G用邻接表矩阵存储,其第i行得所有元素之与等于顶点i得出度。 07、如果n个顶点得图就是一个环,则它有n棵生成树。 08、n个顶点e条边得图,若采用邻接矩阵存储,则空间复杂度为O(n2)。若采用邻接表存储,则空间复杂度为O(n+e)。 09、图得逆邻接表存储结构只适用于有向图。 10、已知一个图得邻接矩阵表示,删除所有从第i个顶点出发得方法就是将邻接矩阵得第i行全部置0。 11、图采用邻接矩阵表示,则计算第i个顶点入度得方法就是求邻接矩阵第i列非0元素之与。 12、用邻接矩阵表示图时,则判断任意两个顶点vi与vj之间就是否有路径相连,只需要检查第i行第j列得元素就是否为0即可。 13、用普里姆(Prim)算法求具有n个顶点e条边得图得最小生成树得时间复杂度为O(n2);用克鲁斯卡尔(Kruskal)算法得时间复杂度就是O(elog2e)。 14、对稀疏图最好用克鲁斯卡尔(Kruskal)算法求最小生成树,对稠密图最好用普里姆(Prim)算法来求解最小生成树。 15、用Dijkstra算法求某一顶点到其余各顶点间得最短路径就是按路径长度递增得次序来得到最短路径得. 16、拓扑排序算法就是通过重复选择具有0个前驱顶点得过程来完成得。 17、有向图G用邻接矩阵存储,则第i行得所有元素之与等于顶点i得出度。 18、有n个顶点得强连通有向图G至少有n条弧。 19、设有向图G得邻接矩阵为A,如果图中不存在弧<Vi,Vj〉,则A[i,j]得值为0。 20、在n个顶点得无向图中,若边数>n—1,则该图必就是连通图,此断言就是错误得。(正确/错误) 21、在有n个顶点得有向图中,每个顶点得度最大可达2(n-1)。 22、若一个有向图得邻接矩阵中对角线以下元素均为零,则该图得拓扑排序序列必定存在。(存在/不存在) 23、一个有向无环图得拓扑排序序列不一定就是唯一得.(一定/不一定) 24、判断一个无向图就是一棵树得条件就是有n个顶点,n-1条边得无向连通图。 25、有向图G 得强连通分量就是指有向图得极大强连通子图. 26、一个连通图得生成树就是一个极小连通子图。 27、具有10个顶点得无向图,边得总数最多为45。 28、若用n表示图中顶点数目,则有n(n-1)/2条边得无向图成为完全图。 29、G 就是一个非连通无向图,共有28条边,则该图至少有9个顶点. 30、在有n个顶点得有向图中,若要使任意两点间可以互相到达,则至少需要n条弧. 31、构造n个结点得强连通图,至少有n条弧. 32、有n个顶点得有向图,至少需要量n条弧才能保证就是连通得. 33、N 个顶点得连通图用邻接矩阵表示时,该矩阵至少有2(N—1)个非零元素. 34、在图G 得邻接表表示中,每个顶点邻接表中所含得结点数,对于无向图来说等于该顶点得度;对于有向图来说等于该顶点得出度。 35、在有向图得邻接矩阵表示中,计算第i个顶点入度得方法就是第i列非0元素个数。 36、对于一个具有n 个顶点e 条边得无向图得邻接表得表示,则表头向量大小为n,邻接表得边结点个数为2e。 37、已知一无向图G=(V,E),其中V={a,b,c,d,e} E={(a,b),(a,d),(a,c),(d,c),(b,e)}现用某一种图遍历方法从顶点a 开始遍历图,得到得序列为abecd,则采用得就是深度优先遍历方法. 38、一无向图G(V,E),其中V(G)={1,2,3,4,5,6,7}, E(G)={(1,2), (1,3), (2,4), (2,5), (3,6), (3,7), (6,7), (5,1)},对该图从顶点3开始进行遍历,去掉遍历中未走过得边,得一生成树G'(V,E’), V(G’)=V(G), E(G’)= {(1,3), (3,6), (7,3), (1,2), (1,5), (2,4)},则采用得遍历方法就是广度优先遍历。 39、为了实现图得广度优先搜索,除了一个标志数组标志已访问得图得结点外,还需队列存放被访问得结点以实现遍历。 40、构造连通网最小生成树得两个典型算法就是普里姆(prim)算法与克鲁斯卡尔(Kruskal)算法。 41、Prim(普里姆)算法适用于求边稠密得网得最小生成树;kruskal(克鲁斯卡尔)算法适用于求边稀疏得网得最小生成树. 42、下面描述得就是一种构造最小生成树算法得基本思想。设要处理得无向图包括n 个节点V1,V2,.。.,Vn,用相邻矩阵A 表示,边得权全就是正数。请在下列划线处填上正确叙述。 (1)若(Vi,Vj)就是边,则A(i,j)得值等于(Vi,Vj)边上得权值,若(Vi,Vj)不就是边,则A(i,j)得值就是一个比任何边得权都大得数, 矩阵得对角线元素全为0。 (2)构造最小生成树过程中,若节点Vi 已包括进生成树,就把相邻矩阵得对角线元素A(i,i)置成1,若(Vi,Vj)已包括进生成树,就把矩阵元素A(i,j)置成负值。 (3)算法结束时,相邻矩阵中为负得元素指出最小生成树得边。 43、有一个用于n 个顶点连通带权无向图得算法描述如下:(1)设集合T1与T2,初始均为空;(2)在连通图上任选一点加入T1;(3)以下步骤重复n-1 次:a)在i属于T1,j不属于T1得边中选最小权得边;b)该边加入T2.上述算法完成后,T2 中共有n-1条边,该算法称普里姆算法,T2 中得边构成图得最小生成树。 44、有向图G可拓扑排序得判别条件就是不存在环。 45、Dijkstra 最短路径算法从源点到其余各顶点得最短路径得路径长度按递增次序依次产生,该算法弧上得权出现负值情况时,不能正确产生最短路径。 46、有向图G=(V,E),其中 V(G)={0,1,2,3,4,5},用〈a,b,d>三元组表示弧<a,b>及弧上得权d、E(G)为{<0,5,100〉, 〈0,2,10〉, 〈1,2,5>, 〈0,4,30〉, <4,5,60>, <3,5,10>, <2,3,50〉, <4,3,20>},则从源点0到顶点3得最短路径长度就是50,经过得中间顶点就是顶点4. 47、上面得图去掉有向弧瞧成无向图则对应得最小生成树得边权之与为75。 48、在AOE网中,从源点到汇点路径上各活动时间总与最长得路径称为关键路径。 49、当一个AOV 网用邻接表表示时,可按下列方法进行拓扑排序。 (1)查邻接表中入度为0得顶点,并进栈; (2)若栈不空,则①输出栈顶元素Vj,并退栈;②查Vj 得直接后继Vk,对Vk 入度处理,处理方法 就是Vk度减1,若Vk入度己减到零,则Vk顶点入栈; (3)若栈空时,输出顶点数小于图得顶点数,说明有环,否则拓扑排序完成。 三、判断题 √01、树中得结点与图中得顶点就就是指数据结构中得数据元素。 ×02、在n 个结点得无向图中,若边数大于n—1,则该图必就是连通图. ×03、有e 条边得无向图,在邻接表中有e 个结点。 ×04、有向图中顶点V 得度等于其邻接矩阵中第V 行中得1 得个数。 √05、强连通图得各顶点间均可达。 ×06、强连通分量就是无向图得极大强连通子图。 ×07、连通分量指得就是有向图中得极大连通子图。 ×08、十字链表就是无向图得一种存储结构。 √09、无向图得邻接矩阵可用一维数组存储。 ×10、用邻接矩阵法存储一个图所需得存储单元数目与图得边数有关。 √11、有n 个顶点得无向图, 采用邻接矩阵表示, 图中得边数等于邻接矩阵中非零元素之与得一半。 ×12、有向图得邻接矩阵就是对称得。 ×13、无向图得邻接矩阵一定就是对称矩阵,有向图得邻接矩阵一定就是非对称矩阵。 ×14、邻接矩阵适用于有向图与无向图得存储,但不能存储带权得有向图与无向图,而只能使用邻接表存储形 式来存储它. √15、用邻接矩阵存储一个图时,在不考虑压缩存储得情况下,所占用得存储空间大小与图中结点个数有关, 而与图得边数无关。 ×16、一个有向图得邻接表与逆邻接表中结点得个数可能不等。 ×17、广度遍历生成树描述了从起点到各顶点得最短路径。 ×18、不同得求最小生成树得方法最后得到得生成树就是相同得。 √19、连通图上各边权值均不相同,则该图得最小生成树就是唯一得. √20、在图G 得最小生成树G1 中,可能会有某条边得权值超过未选边得权值。 ×21、拓扑排序算法把一个无向图中得顶点排成一个有序序列。 ×22、拓扑排序算法仅能适用于有向无环图。 √23、无环有向图才能进行拓扑排序。 ×24、有环图也能进行拓扑排序. ×25、拓扑排序得有向图中,最多存在一条环路. ×26、任何有向图得结点都可以排成拓扑排序,而且拓扑序列不唯一. ×27、既使有向无环图得拓扑序列唯一,也不能唯一确定该图。 √28、若一个有向图得邻接矩阵对角线以下元素均为零,则该图得拓扑有序序列必定存在. ×29、对一个AOV 网,从源点到终点得路径最长得路径称作关键路径. √30、关键路径就是AOE 网中从源点到终点得最长路径。 ×31、在表示某工程得AOE 网中,加速其关键路径上得任意关键活动均可缩短整个工程得完成时间. ×32、在AOE 图中,关键路径上某个活动得时间缩短,整个工程得时间也就必定缩短。 √33、在AOE 图中,关键路径上活动得时间延长多少,整个工程得时间也就随之延长多少. ×34、当改变网上某一关键路径上任一关键活动后,必将产生不同得关键路径. 四、简答题 01、写出下面有向图得所有强连通分量。 答:3个,分别就是:a,bce,dfg 02、已知图得邻接表如下,画出图G得所有连通分量。 答: 03、如下图,分别用普里姆算法与克鲁斯卡尔算法从顶点1开始求最小生成树,写出按次序产生边得序列.说明:边用(i,j)方式表示。 答:普里姆算法产生边得序列:(1,3),(3,4),(4,6),(6,5),(1,2) 克鲁斯卡尔算法产生边得序列:(4,6),(1,3),(4,3),(6,5),(1,2) 04、如下图,写出所有得拓扑序列,并求在添加什么边之后仅可能有惟一得拓扑序列。 答:v1,v2,v3,v4 v1,v3,v2,v4 v2,v1,v3,v4 <v3,v2> 05、已知如图所示得有向图,请给出该图得: (1) 每个顶点得入/出度;(2) 邻接矩阵;(3) 邻接表;(4) 逆邻接表。 答: (1) 每个顶点得入/出度 (2) 邻接矩阵 (3) 邻接表 (4) 逆邻接表 06、写出无向带树图得邻接矩阵,并按普里姆算法填写表格中得内容,最后画出最小生成树; V b c D e F g h U V-U Vex lowcost a 4 a 3 A ∞ a ∞ a ∞ a ∞ a ∞ {a} {bcdefgh} Vex lowcost Vex lowcost Vex lowcost Vex lowcost Vex lowcost Vex Lowcost Vex lowcost 答: (1)邻接矩阵为: V b c d e f g h U V-U Vex lowcost a 4 a 3 a ∞ a ∞ a ∞ a ∞ a ∞ {a} {b,c,d,e,f,g,h} Vex lowcost a 4 0 c 5 a ∞ a ∞ a ∞ c 5 {a,c} {b,d,e,f,g,h} Vex lowcost 0 0 c 5 b 9 a ∞ a ∞ c 5 {a,c,b} {d,e,f,g,h} Vex lowcost 0 0 0 d 7 d 6 d 5 d 4 {a,c,b,d} {e,f,g,h} Vex lowcost 0 0 0 d 7 d 6 d 5 0 {a,c,b,d,h} {e,f,g} Vex lowcost 0 0 0 d 7 g 2 0 0 {a,c,b,d,h,g} {f,e} Vex lowcost 0 0 0 f 3 0 0 0 {a,c,b,d,h,g,f} {e} Vex lowcost 0 0 0 0 0 0 0 {a,c,b,d,h,g,f,e} { } 最小生成树 07、按克鲁斯卡尔算法写出下面无向带权图求最小生成树产生得边序列。 答: fg(2)àac(3)àfe(3)àab(4)àdh(4)àbd(5)àdg(5) 08、已知二维数组表示得图得邻接矩阵如下图所示.试分别画出自顶点1出发进行遍历所得得深度优先生成树与广度优先生成树。 答: 09、利用Dijkstra算法填写表格求图中从顶点a到其她各顶点间得最短路径,并写出最终结果。 终点 Dist b c D e f g S(终点集) k=1 k=2 k=3 k=4 k=5 k=6 答: aàc:2(a,c) aàf:6(a,c,f) aàe:10(a,c,e) aàd:11(a,c,f,d) aàg:14(a,c,f,d,g) aàb:15(a,b) 10、求出下图中从顶点1出发到其余各顶点得最短路径。 答: 11、设图G=(V,E),V={1,2,3,4,5,6},E={<1,2〉,<1,3>,<2,5>,〈3,6>,<6,5〉,<5,4>,<6,4>}。画出图G,并写出图G中顶点得所有拓扑序列. 答: 1,2,3,6,5,4 1,3,2,6,5,4 1,3,6,2,5,4 五、代码填空题 01、图得存储结构定义如下: typedef struct ArcCell { VRType adj; /*图中有1/0表示就是否有边,网中表示边上得权值*/ /* InfoType *info; 与边相关得信息*/ } ArcCell, AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; typedef struct { VertexType vexs[MAX_VERTEX_NUM]; /*顶点向量*/ AdjMatrix arcs; /*邻接矩阵*/ int vexnum,arcnum; /*图中当前顶点数与边数*/ } MGraph; (1) 请写出下面函数实现得功能:顶点在顶点向量中得定位。 int LocateVex(MGraph G,VertexType v) { int i; for(i=0;i〈G、vexnum;i++) if (strcmp(v,G、vexs[i])==0) break; return i; } (2) 下面函数得功能就是在图中查找第1个邻接点,请填空。 int FirstAdjVex(MGraph G,int v) { int j,p=-1; for(j=0;j<G、vexnum;j++) if (G、arcs[v][j]、adj==1) { p=j; break;} return p; } (3) 下面函数得功能就是在图中查找下一个邻接点,请填空。 int NextAdjVex(MGraph G,int v,int w) { int j,p=-1; for(j=w+1;j〈G、vexnum;j++) if (G、arcs[v][j]、adj==1) { p=j; break;} return p; } 02、已知图得邻接表表示得形式说明如下: #define MaxNum 80 typedef struct node { int adjvex; //邻接点域 struct node *next; //链指针域 } EdgeNode; //边表结点结构描述 typedef struct { char vertex; //顶点域 EdgeNode *firstedge; //边表头指针 } VertexNode; //顶点表结点结构描述 typedef struct { VertexNode adjlist[MaxNum]; //邻接表 int n,e; } AlGraph; //邻接表结构描述 下列算法输出图G得深度优先生成树(或森林)得边,阅读算法,并在空缺处填入合适得内容,使其成为一个完整得算法。 typedef enum {FALSE,TRUE} Boolean; Boolean visited[MaxNum]; void DFSForest(AlGraph *G) { for(i=0; i<G—>n; i++) visited[i]=FALSE; for(i=0;i<G->n;i++) if (!visited[i]) DFSTree(G,i);} void DFSTree(AlGraph *G, int i) { visited[i]=TRUE; p=G-〉adjlist[i]、firstedge; while(p!=NULL) { if (!visited[p—>adjves]) { printf(G->adjlist[i]、vertex, G->adjlist[p-〉adjvex]、vertex); DSFTree(G, p—>adjvex);} p=p->next; } } 六、算法设计题 01、编写编历算法,完成对图得深度优先搜索与广度优先搜索。 答:深度优先搜索:课本P169算法7、4与算法7、5 广度优先搜索:课本P170算法7、6 02、编写算法,由依次输入得顶点数目、弧得数目、各顶点得信息与各条弧得信息建立有向图得邻接表. 答:Status Build_AdjList(ALGraph &G) //输入有向图得顶点数,边数,顶点信息与边得信息建立邻接表 { InitALGraph(G); scanf("%d",&v); if(v<0) return ERROR; //顶点数不能为负 G、vexnum=v; scanf(”%d",&a); if(a<0) return ERROR; //边数不能为负 G、arcnum=a; for(m=0;m〈v;m++) G、vertices[m]、data=getchar(); //输入各顶点得符号 for(m=1;m<=a;m++) { t=getchar();h=getchar(); //t为弧尾,h为弧头 if((i=LocateVex(G,t))〈0) return ERROR; if((j=LocateVex(G,h))〈0) return ERROR; //顶点未找到 p=(ArcNode*)malloc(sizeof(ArcNode)); if(!G、vertices、[i]、firstarc) G、vertices[i]、firstarc=p; else { for(q=G、vertices[i]、firstarc;q->nextarc;q=q-〉nextarc); q-〉nextarc=p; } p—〉adjvex=j;p—>nextarc=NULL; }//while return OK; }//Build_AdjList 03、试在邻接矩阵存储结构上实现图得基本操作:DeleteArc(G,v,w) ,即删除一条边得操- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 答案
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文