我把源截图中必须依赖图形的题改写为等价边表,避免把整张答题页面当作图片贴上来;顶点、边和权值均来自原图。
选择题
1. 含 n 条边的无向图,其邻接表中共有多少个边结点?
展开答案
2n,对应 B。
2. n 个顶点的无向图采用邻接矩阵,其矩阵具有什么性质?
展开答案
对称矩阵,对应 B。
3. 8 个顶点的简单无向图最多有多少条边?
展开答案
8×7/2=28,对应 B。
4. 图中所有顶点度数之和是边数的多少倍?
展开答案
2 倍,对应 C。
5. 图的深度优先遍历类似二叉树的哪种遍历?
展开答案
前序遍历,对应 A。
6. 一个无向连通图有多少棵最小生成树?
展开答案
可能一棵,也可能多棵,对应 B。
7. 邻接表上的广度优先遍历通常借助什么结构?
展开答案
队列,对应 B。
8. 计算 AOE 网关键路径长度与活动 a6 的松弛时间
活动边为:v1→v2(a1=3)、v1→v4(a2=6)、v1→v3(a3=2)、v2→v5(a4=4)、v2→v4(a5=2)、v3→v4(a6=1)、v3→v6(a7=3)、v4→v5(a8=1)、v5→v7(a9=3)、v6→v7(a10=4)。
展开答案
关键路径长度为 10,对应 C;a6 的松弛时间为 3,对应 A。
9. 含 n 个顶点、e 条边的无向连通图,用 Kruskal 算法生成最小生成树,复杂度是什么?
展开答案
O(elog2e),对应 A,主要代价是边排序。
10. 关于 AOE 网,哪项叙述错误?
展开答案
“任一关键活动提前完成都会使整个工程提前完成”错误,对应 D;可能还有另一条同长度关键路径。
填空题
1. 邻接表中每个顶点的边结点数,对无向图和有向图分别表示什么?
展开答案
无向图为该顶点的度,有向图为出度。
2. 有向图邻接矩阵第 i 行非无穷大元素数等于什么?
展开答案
顶点 i 的出度。
3. 稀疏图用邻接矩阵还是邻接表更省空间?
展开答案
邻接表。
4. n 个顶点构成一个环,它有多少棵生成树?
展开答案
n 棵;删去环上任一条边都得到一棵生成树。
5. Prim 算法最后加入边的权值
题图的无向边为:v1v2:16、v1v3:10、v1v4:9、v2v3:11、v2v5:6、v2v6:5、v3v4:2、v3v5:14、v4v5:18、v5v6:1。从 v1 开始执行 Prim。
展开答案
最后一条加入的边权为 1。
6. Kruskal 算法最后加入边的权值
仍使用上一题的无向图。
展开答案
最后选入边的权值为 11。
7. 一个非连通无向图最多有 28 条边,至少有多少个顶点?
展开答案
9 个。
8. 求有向图的一组拓扑序
V={v1,v2,v3,v4,v5,v6},E={⟨v1,v2⟩,⟨v1,v4⟩,⟨v2,v6⟩,⟨v3,v1⟩,⟨v3,v4⟩,⟨v4,v5⟩,⟨v5,v2⟩,⟨v5,v6⟩}。
展开答案
v3v1v4v5v2v6。
9. 用 Dijkstra 算法求 A 到 G 的最短路径
题图有向边为:A→B:3、A→C:2、A→D:3、B→C:3、B→E:1、C→E:3、F→C:1、D→F:3、E→G:1、F→G:5。
展开答案
ABEG,总权值为 5。
10. 求题给 AOE 网的关键路径
题图活动边为:v1→v2(a1=3)、v1→v3(a2=4)、v2→v4(a3=2)、v2→v5(a4=1)、v3→v5(a5=3)、v3→v6(a6=5)、v4→v7(a7=6)、v5→v7(a8=8)、v5→v8(a9=4)、v6→v9(a10=2)、v7→v11(a11=7)、v8→v10(a12=4)、v8→v9(a13=10)、v9→v10(a14=1)、v10→v11(a15=6)。
展开答案
a2a5a9a13a14a15。
编程题提交
图遍历(图-基本题)
查看提交实现
提交建立图的邻接关系并按题目要求遍历。访问标记避免环导致重复访问;源中只保留了我的代码,未保存题目对邻接点次序的完整约定。
最少布线(图)
查看提交实现
提交在带权无向图上选择连接全部顶点的低代价边,属于最小生成树问题。实现按源代码维护候选边和已连通顶点。
独立路径数计算
查看提交实现
提交遍历图并统计符合题设条件的路径数。独立题面缺失,无法确认“独立路径”的精确定义和是否允许重复顶点,因此不据代码补造定义。
北京地铁乘坐线路查询(202205)
查看提交实现
源目录保存站点数据 bgstations.txt。提交把站点建成图,读取起点和终点,计算路径并按线路变化输出乘车方案。代码使用图搜索与前驱数组恢复路径。