书据结构课程(本科)第八章试题一、单项选择题1.在无向图中定义顶点的度为与它相关联的()的数目。
A. 顶点B. 边C. 权D. 权值2.在无向图中定义顶点v i与v j之间的路径为从v i到达v j的一个()。
A. 顶点序列B. 边序列C. 权值总和D. 边的条数3.图的简单路径是指()不重复的路径。
A. 权值B. 顶点C. 边D. 边与顶点均4.设无向图的顶点个数为n,则该图最多有()条边。
A. n-1B. n(n-1)/2C. n(n+1)/2D. n(n-1)5.n个顶点的连通图至少有()条边。
A. n-1B. nC. n+1D. 06.在一个无向图中,所有顶点的度数之和等于所有边数的( ) 倍。
A. 3B. 2C. 1D. 1/27.若采用邻接矩阵法存储一个n个顶点的无向图,则该邻接矩阵是一个( )。
A. 上三角矩阵B. 稀疏矩阵C. 对角矩阵D. 对称矩阵8.图的深度优先搜索类似于树的()次序遍历。
A. 先根B. 中根C. 后根D. 层次9.图的广度优先搜索类似于树的()次序遍历。
A. 先根B. 中根C. 后根D. 层次10.在用Kruskal算法求解带权连通图的最小(代价)生成树时,通常采用一个()辅助结构,判断一条边的两个端点是否在同一个连通分量上。
A. 位向量B. 堆C. 并查集D. 生成树顶点集合11.在用Kruskal算法求解带权连通图的最小(代价)生成树时,选择权值最小的边的原则是该边不能在图中构成()。
A. 重边B. 有向环C. 回路D. 权值重复的边12.在用Dijkstra算法求解带权有向图的最短路径问题时,要求图中每条边所带的权值必须是()。
A. 非零B. 非整C. 非负D. 非正13.在一个连通图中进行深度优先搜索得到一棵深度优先生成树,树根结点是关节点的充要条件是它至少有()子女。
A. 1B. 2C. 3D. 014.设有向图有n个顶点和e条边,采用邻接表作为其存储表示,在进行拓扑排序时,总的计算时间为()。
A. O(nlog2e)B. O(n+e)C. O(n e)D. O(n2)15.设有向图有n个顶点和e条边,采用邻接矩阵作为其存储表示,在进行拓扑排序时,总的计算时间为()。
A. O(nlog2e)B. O(n+e)C. O(n e)D. O(n2)16.设G1 = (V1, E1) 和G2 = (V2, E2) 为两个图,如果V1 ⊆ V2,E1 ⊆ E2,则称()。
A. G1是G2的子图B. G2是G1的子图C. G1是G2的连通分量D. G2是G1的连通分量17.有向图的一个顶点的度为该顶点的()。
A. 入度B. 出度C. 入度与出度之和D. (入度﹢出度))/218.一个连通图的生成树是包含图中所有顶点的一个()子图。
A. 极小B. 连通C. 极小连通D. 无环19.n (n>1) 个顶点的强连通图中至少含有()条有向边。
A. n-1B. n n(n-1)/2 D. n(n-1)20.在一个带权连通图G中,权值最小的边一定包含在G的()生成树中。
A. 某个最小B. 任何最小C. 广度优先D.深度优先21.对于具有e条边的无向图,它的邻接表中有()个边结点。
A. e-1B. eC. 2(e-1)D. 2e22.对于如图所示的带权有向图,从顶点1到顶点5的最短路径为()。
A.1, 4, 5B. 1, 2, 3, 5C. 1, 4, 3, 5D. 1, 2, 4, 3, 523.具有n个顶点的有向无环图最多可包含()条有向边。
A. n-1B. nC. n(n-1)/2D.n(n-1)24.一个有n个顶点和n条边的无向图一定是()。
A. 连通的B. 不连通的 C . 无环的 D . 有环的25. 在n 个顶点的有向无环图的邻接矩阵中至少有( )个零元素。
A. n B. n(n -1)/2 C. n(n+1)/2 D. n(n -1)26. 对于有向图,其邻接矩阵表示比邻接表表示更易于( )。
A. 求一个顶点的度 B. 求一个顶点的邻接点 C. 进行图的深度优先遍历 D. 进行图的广度优先遍历27. 在一个有向图的邻接矩阵表示中,删除一条边<v i , v j >需要耗费的时间是( )。
A. O(1) B. O(i) C. O(j) D. O(i+j)28. 与邻接矩阵相比,邻接表更适合于存储( )图。
A. 无向 B.连通 C.稀疏 D. 稠密图29. 设一个有n 个顶点和e 条边的有向图采用邻接矩阵表示,要计算某个顶点的出度所耗费的时间是( )。
A. O(n) B. O(e) C. O(n+e) D. O(n 2)30. 为了实现图的广度优先遍历,BFS 算法使用的一个辅助数据结构是( )。
A. 栈 B. 队列 C. 二叉树 D. 树参考答案: 1. B 2. A 3. B 4. B 5. A6. B7. D8. A9. D 10. C 11.C 12. C 13. B 14. B 15. D 16. A 17. C 18. C 19. B 20. A 21. D 22. D 23. C 24. D 25. C 26. A 27. A 28. C 29. A 30. B二、填空题1. 图的定义包含一个顶点集合和一个边集合。
其中,顶点集合是一个有穷________集合。
2. 用邻接矩阵存储图,占用存储空间数与图中顶点个数________关,与边数________关。
3. n (n ﹥0) 个顶点的无向图最多有________条边,最少有________条边。
4. n (n ﹥0) 个顶点的连通无向图最少有________条边。
5. 若3个顶点的图G 的邻接矩阵为⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡010001010,则图G 一定是________向图。
6. n (n ﹥0) 个顶点的连通无向图各顶点的度之和最少为________。
7.设图G = (V, E),V = {V0, V1, V2, V3}, E = {(V0, V1), (V0, V2), (V0, V3), (V1, V3)},则从顶点V0开始的图G的不同深度优先序列有________种,例如______________。
8.设图G = (V, E),V = {P, Q, R, S, T}, E = {<P, Q>, <P, R>, <Q, S>, <R, T>},从顶点P出发,对图G进行广度优先搜索所得的所有序列为__________和___________。
9.n (n﹥0) 个顶点的无向图中顶点的度的最大值为________。
10.在重连通图中每个顶点的度至少为________。
11.在非重连通图中进行深度优先搜索,则深度优先生成树的根为关节点的充要条件是它至少有________个子女。
12.(n﹥0) 个顶点的连通无向图的生成树至少有________条边。
13.101个顶点的连通网络N有100条边,其中权值为1, 2, 3, 4, 5, 6, 7, 8, 9, 10的边各10条,则网络N的最小生成树各边的权值之和为_________。
14.在使用Kruskal算法构造连通网络的最小生成树时,只有当一条候选边的两个端点不在同一个________上,才有可能加入到生成树中。
15.深度优先生成树的高度比广度优先生成树的高度________。
16.求解带权连通图最小生成树的Prim算法适合于________图的情形,而Kruskal算法适合于________图的情形。
17.求解最短路径的Dijkstra算法适用于各边上的权值________的情形。
若设图的顶点数为n,则该算法的时间复杂度为________。
18.若对一个有向无环图进行拓扑排序,再对排在拓扑有序序列中的所有顶点按其先后次序重新编号,则在相应的邻接矩阵中所有________元素将集中到对角线以上。
参考答案: 1. 非空 2. 有, 无 3. n(n-1)/2, 04. n-15. 有6. 2(n-1)7. 4,V0V1V3V2(或V0V2V1V3, V0V2V3V1, V0V3V1V2)8. PQRST和PRQTS 9. n-1 10. 211. 2 12. n-1 13. 55014. 连通分量15. 高16. 稠密,稀疏17. 非负,O(n2) 18. 非零(或值为1的)三、判断题1.一个图的子图可以是空图,顶点个数为0。
2.存储图的邻接矩阵中,矩阵元素个数不但与图的顶点个数有关,而且与图的边数也有关。
3.一个有1000个顶点和1000条边的有向图的邻接矩阵是一个稀疏矩阵。
4.对一个连通图进行一次深度优先搜索(depth first search)可以遍访图中的所有顶点。
5.有n (n≥1) 个顶点的无向连通图最少有n-1条边。
6.有n (n≥1) 个顶点的有向强连通图最少有n条边。
7.图中各个顶点的编号是人为的,不是它本身固有的,因此可以因为某种需要改变顶点的编号。
8.如果无向图中各个顶点的度都大于2,则该图中必有回路。
9.如果有向图中各个顶点的度都大于2,则该图中必有回路。
10.图的深度优先搜索(depth first search)是一种典型的回溯搜索的例子,可以通过递归算法求解。
11.图的广度优先搜索(breadth first search)算法不是递归算法。
12.有n个顶点、e条边的带权有向图的最小生成树一般由n个顶点和n-1条边组成。
13.对于一个边上权值任意的带权有向图,使用Dijkstra算法可以求一个顶点到其它各个顶点的最短路径。
14.对一个有向图进行拓扑排序(topological sorting),一定可以将图的所有顶点按其关键码大小排列到一个拓扑有序的序列中。
15.有回路的有向图不能完成拓扑排序。
16.对任何用顶点表示活动的网络(AOV网)进行拓扑排序的结果都是唯一的。
17.用边表示活动的网络(AOE网)的关键路径是指从源点到终点的路径长度最长的路径。
18.对于AOE网络,加速任一关键活动就能使整个工程提前完成。
19.对于AOE网络,任一关键活动延迟将导致整个工程延迟完成。
20.在AOE网络中,可能同时存在几条关键路径,称所有关键路径都需通过的有向边为桥。
如果加速这样的桥上的关键活动就能使整个工程提前完成。
21.用邻接矩阵存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小只与图中的顶点个数有关,而与图的边数无关。
22.邻接表只能用于有向图的存储,邻接矩阵对于有向图和无向图的存储都适用。
23.邻接矩阵只适用于稠密图(边数接近于顶点数的平方),邻接表适用于稀疏图(边数远小于顶点数的平方)24. 存储无向图的邻接矩阵是对称的,因此只要存储邻接矩阵的下(上)三角部分就可以了。