基本概念题: 8-1已知图G=(V,E),其中V={a,b,c,d,e,f,g},E={,,,, ,,,,,,,<g,f》},请画出图G,并画出图G 的邻接矩阵和图G的邻接表。 8-2对于图8-17所示的有向图,要求给出: (1)该有向图的邻接矩阵存储结构 (2)该有向图的邻接表存储结构 (3)设顶点A为访问的第一个顶点,按照邻接矩阵存储结构给出的每个顶点的邻接顶 点次序,给出该有向图的深度优先遍历的顶点访问序列 (4)设顶点A为访问的第一个顶点,按照邻接矩阵存储结构给出的每个顶点的邻接顶 点次序,给出该有向图的广度优先遍历的顶点访问序列 图8-17有向图 8-3对于图8-18所示的无向带权图,要求 (1)根据普里姆算法思想,画出构造该无向带权图最小生成树的过程 (2)根据克鲁斯卡尔算法思想,画出构造该无向带权图最小生成树的过程 图8-18无向带权图 8-4对于图8-19所示的有向带权图,根据狄克斯特拉算法思想,画出生成从顶点A到 其余各顶点最短路径的过程 8-19有向带权图 复杂概念题 8-5证明:无向完全图中一定有n(n-1)/2条边。 8-6证明:有向完全图中一定有n(n-1)条弧。 *8-7证明:在一个有n个顶点的完全图中生成树的数目可以有2n-1-1个。 *8-8证明:对于一个无向图G=(V,E),若G中各顶点的度均大于或等于2,则G中必 存在回路
1 b c d e a f g 3 G C E F A B D 2 8 4 9 6 4 1 9 7 5 8 1 v2 v3 v6 v1 v5 v4 基本概念题: 8-1 已知图 G=(V,E),其中 V={a,b,c,d,e,f,g},E={,,,, ,,,,,,,},请画出图 G,并画出图 G 的邻接矩阵和图 G 的邻接表。 8-2 对于图 8-17 所示的有向图,要求给出: (1)该有向图的邻接矩阵存储结构; (2)该有向图的邻接表存储结构; (3)设顶点 A 为访问的第一个顶点,按照邻接矩阵存储结构给出的每个顶点的邻接顶 点次序,给出该有向图的深度优先遍历的顶点访问序列。 (4)设顶点 A 为访问的第一个顶点,按照邻接矩阵存储结构给出的每个顶点的邻接顶 点次序,给出该有向图的广度优先遍历的顶点访问序列。 图 8-17 有向图 8-3 对于图 8-18 所示的无向带权图,要求: (1)根据普里姆算法思想,画出构造该无向带权图最小生成树的过程; (2)根据克鲁斯卡尔算法思想,画出构造该无向带权图最小生成树的过程。 图 8-18 无向带权图 8-4 对于图 8-19 所示的有向带权图,根据狄克斯特拉算法思想,画出生成从顶点 A 到 其余各顶点最短路径的过程。 8-19 有向带权图 复杂概念题: 8-5 证明:无向完全图中一定有 n(n - 1) / 2 条边。 8-6 证明:有向完全图中一定有 n(n - 1)条弧。 *8-7 证明:在一个有 n 个顶点的完全图中生成树的数目可以有 2 n - 1 – 1 个。 *8-8 证明:对于一个无向图 G = (V, E),若 G 中各顶点的度均大于或等于 2,则 G 中必 存在回路。 10 12 4 25 3 16 12 7 10 8 2
算法设计题 8-9编写函数,求邻接矩阵存储结构的有向图G中各顶点的入度。 8-10编写函数,求邻接矩阵存储结构的有向图G中各顶点的出度 *8-11要求: (1)给出图的非递归的深度优先遍历算法步骤 (2)设图G采用邻接表存储结构存储,编写一个非递归的深度优先遍历函数 *8-12编写实现在邻接表存储的图G中删除顶点ⅴ的函数。 (提示:删除一个顶点时要删除和该顶点有关联的所有边) 8-13编写函数,判断邻接矩阵存储结构的有向图G中,两个顶点v1和v2之间是否存 在从vl到v2的路径 提示:利用深度优先遍历函数或广度优先遍历函数) 上机实习题: 8-14邻接表存储结构图的程序设计。要求: (1)以图8-17为例,设计一个测试8.3.2节讨论的邻接表存储结构下图的操作函数的 主函数,并给出程序运行的输出结果。 (2)设计邻接表存储结构下图的深度优先搜索遍历函数和广度优先搜索遍历函数,并 以图8-17为例,编写主函数测试这些函数。 *(3)编写删除图G中顶点ⅴ的函数(提示:删除一个顶点时要删除和该顶点有关联 的所有边),并测试该函数的正确性
2 算法设计题: 8-9 编写函数,求邻接矩阵存储结构的有向图 G 中各顶点的入度。 8-10 编写函数,求邻接矩阵存储结构的有向图 G 中各顶点的出度。 *8-11 要求: (1)给出图的非递归的深度优先遍历算法步骤。 (2)设图 G 采用邻接表存储结构存储,编写一个非递归的深度优先遍历函数。 *8-12 编写实现在邻接表存储的图 G 中删除顶点 v 的函数。 (提示:删除一个顶点时要删除和该顶点有关联的所有边) *8-13 编写函数,判断邻接矩阵存储结构的有向图 G 中,两个顶点 v1 和 v2 之间是否存 在从 v1 到 v2 的路径。 (提示:利用深度优先遍历函数或广度优先遍历函数) 上机实习题: 8-14 邻接表存储结构图的程序设计。要求: (1)以图 8-17 为例,设计一个测试 8.3.2 节讨论的邻接表存储结构下图的操作函数的 主函数,并给出程序运行的输出结果。 (2)设计邻接表存储结构下图的深度优先搜索遍历函数和广度优先搜索遍历函数,并 以图 8-17 为例,编写主函数测试这些函数。 *(3) 编写删除图 G 中顶点 v 的函数(提示:删除一个顶点时要删除和该顶点有关联 的所有边),并测试该函数的正确性