数据结构与算法6.docx
- 文档编号:308887
- 上传时间:2022-10-08
- 格式:DOCX
- 页数:8
- 大小:26.52KB
数据结构与算法6.docx
《数据结构与算法6.docx》由会员分享,可在线阅读,更多相关《数据结构与算法6.docx(8页珍藏版)》请在冰豆网上搜索。
数据结构与算法6
第六次作业一、选择题1、深度优先遍历类似与二叉树的A:
A.先根遍历B.中根遍历C.后根遍历D.层次遍历2、广度优先遍历类似与二叉树的D:
A.先根遍历B.中根遍历C.后根遍历D.层次遍历3、下列关于开放树(FreeTree)的说法错误的是C:
A.具有n个结点的开放树包含n-1条边B.开放树没有回路C.开放树可以是非连通图D.在开放树中任意加一条边,一定会产生回路4、关于最小生成树,下列说法错误的是C:
A.最小生成树是一棵开放树B.最小生成树各边的和是所有生成树中最小的C.任何图都只有一个最小生成树D.能够产生最小生成树的图,其边一定有权值5、任何一个无向连通图的最小生成树B:
A.只有1棵B.1棵或多棵C.一定有多棵D.可能不存在6、在如下图所示的图中,从顶点a出发,按深度优先遍历,则可能得到的一种顶点的序列为C和D。
A.a,b,e,c,d,fB.a,c,f,e,b,dC.a,e,b,c,f,dD.a,e,d,f,c,b7、在如上图所示的图中,从顶点a出发,按广度优先遍历,则可能得到的一种顶点的序列为A。
A.a,b,e,c,d,fB.a,b,e,c,f,dC.a,e,b,c,f,dD.a,e,d,f,c,b8、设网(带权的图)有n个顶点和e条边,则采用邻接表存储时,求最小生成树的Prim算法的时间复杂度为C。
23A.O(n)B.O(n+e)C.O(n)D.O(n)9、设图有n个顶点和e条边,求解最短路径的Floyd算法的时间复杂度为D。
23A.O(n)B.O(n+e)C.O(n)D.O(n)
10、最小生成树是指C。
A.由连通网所得到的边数最少的生成树。
B.由连通网所得到的顶点数相对较少的生成树。
C.连通网中所有生成树中权值之和为最小的生成树。
D.连通网的极小连通子图。
11、下面关于工程计划的AOE网的叙述中,不正确的是B。
A.关键活动不按期完成就会影响整个工程的完成时间。
B.任何一个关键活动提前完成,那么整个工程将会提前完成。
C.所有关键活动都提前完成,那么整个工程将会提前完成。
D.某些关键工程若提前完成,那么整个工程将会提前完成。
12、在AOE网中,始点和汇点的个数为D。
A.1个始点,若干个汇点B.若干个始点,若干个汇点C.若干个始点,1个汇点D.1个始点,1个汇点13、在下图所示的无向图中,从顶点v1开始采用Prim算法生成最小生成树,算法过程中产生的顶点次序为B。
A.v1,v3,v4,v2,v5,v6B.v1,v3,v6,v2,v5,v4C.v1,v2,v3,v4,v5,v6D.v1,v3,v6,v4,v2,v514、在上图所示的途中,采用Cruskal算法生成最小生成树,过程中产生的边的次序是C。
A.(v1,v2),(v2,v3),(v5,v6),(v1,v5)B.(v1,v3),(v2,v6),(v2,v5),(v1,v4)C.(v1,v3),(v2,v5),(v3,v6),(v4,v5)D.(v2,v5),(v1,v3),(v5,v6),(v4,v5)15、如下图所示的图中,其中一个拓扑排序的结果是A。
A.v1→v2→v3→v6→v4→v5→v7→v8B.v1→v2→v3→v4→v5→v6→v7→v8C.v1→v6→v4→v5→v2→v3→v7→v8D.v1→v6→v2→v3→v7→v8→v4→v5
16、在下图所示的AOE网中,活动a9的最早开始时间为B。
A.13B.14C.15D.1617、在上图所示的AOE网中,活动a4的最迟开始时间为DA.4B.5C.6D.7二、填空题1、图的遍历有深度优先遍历和广度优先遍历等方法。
2、在深度优先搜索和广度优先搜索中,都采用visited[i]=false的方式设置第i个顶点为new,而采用visited[i]=true的方式标识第i个结点为old。
3、由于深度优先算法的特点,深度优先往往采用递归的方式实现。
4、由于广度优先算法的特点,在广度优先实现过程中,往往要借助于另一种数据结构队列实现。
5、在深度优先搜索和广度优先搜索中,在搜索过程中所经过的边都称为树边。
6、连通而且无环路的无向图称为开放树。
7、对于含有n个顶点e条边的连通图,利用Prim算法求其最小生成树的时间复杂度为2O(n),利用Kruscal算法求最小生成树的时间复杂度是O(n)。
8、顶点表示活动的网简称为AOV;边表示活动的网简称为AOE。
9、一个含有n个顶点的无向连通图,其每条边的权重都是a(a>0),则其最小生成树的权重等于(n-1)*a。
三、已知一个连通图如下图所示,分别给出一个按深度优先遍历和广度优先遍历的顶点序列(假设从顶点v1出发)。
并编程分别实现该图的邻接矩阵表示和邻接表表示,要求编写相关基本操作,并在主函数中求出深度优先序列和广度优先序列。
v1v2v3v4v5v6010101v1101110v2010010v3110011v4011100v5100100v6HEADv1v2v4v6^v2v1v3v4v5^v3v2v5^v4v1v2v5v6^v5v2v3v4^v6v1v4^深度优先:
v1v2v3v5v4v6广度优先:
v1v2v4v6v3v5#include
}AdjGraph;//邻接表表示BOOLEANvisited[NumVertices];intdfn[NumVertices];//深度优先voidDFSTraverse(AdjGraphG){inti,count=1;for(i=0;i visited[i])DFS1(&G,i+1);}voidDFS1(AdjGraph*G,inti){staticintcount=0;EdgeNode*p;cout< (1){if(! visited[p->adjvex])DFS1(G,p->adjvex);p=p->next;if(p==NULL)break;}}intbfn[NumVertices];//广度优先voidBFS1(AdjGraph*G,intk){EdgeNode*p;QUEUEQ;MAKENULL(Q);cout< ENQUEUE(k,Q);while(! EMPTY(Q)){i=FRONT(Q)->element;DEQUEUE(Q);p=G->vexlist[i].firstedge;while(p){if(! visited[p->adjvex]){cout< for(i=0;i visited[i])DFS2(&G,i);}voidDFS2(MTGraph*G,inti){intj;staticintcount=0;cout< visited[j])DFS2(G,j);}intbfn[NumVertices];//广度优先voidBFS2(MTGraph*G,intk){inti,j;QUEUEQ;MAKENULL(Q);cout< EMPTY(Q)){i=FRONT(Q)->element;DEQUEUE(Q);for(j=0;j visited[j]){cout< }}}}intmain(){MTGraphG;IniM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 算法