判断题:
1. 在n个结点的无向图中,若边数 > n-1,则该图必是连通图。(
答:false(该图可能包含多个连通子图,但其本身可以是不连通的。因为图的定义是:
如果对于图中任意两个顶点v 、v ∈e,v 和v 都是连通的,则称g是连通图(connected graph)。)
2.邻接表法只能用于有向图的存储,而邻接矩阵法对于有向图和无向图的存储都适用。(
答:false(邻接表也可存储无向图)
3.图的深度优先搜索序列和广度优先搜索序列不一定是唯一的。(
答:true
4.有回路的图不能进行拓扑排序。(
答:true
5.任何aov网拓扑排序的结果都是唯一的。(
答:false(拓扑排序不一定唯一,只要满足偏序关系即可。)
6.在aov-网中,如果得到的拓扑有序序列中顶点个数小于网中顶点数n,则说明网中存在环,不能求关键路径。(
答:true
7.图的邻接矩阵中矩阵元素的行数只与顶点个数有关( true )
8.图的邻接矩阵中矩阵中非零元素个数与边数有关(true )
9.在拓扑排序序列中,任意两个相继结点v i和vj都存在从v i到vj的路径(false )
10.若一个图的邻接矩阵为对称矩阵,则该图必为无向图。(true )
11.任一aoe网中至少有一条关键路径,且是从源点到汇点的路径中最长的一条( true )
12.在有向图中,入度为0的结点称为叶子结点(或叶子)( false )
单选题: 13.在一个图中,所有顶点的度数之和等于所有边数的( ①倍,在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的( ②倍。
a. 1/2 b. 2 c. 1 d. 4
答:① b ② c
14.具有n个顶点的有向图最多有( )条边。
a.n b. n(n-1) c. n(n+1) d.
答:b 15.在一个具有n个顶点的无向图中,要连通全部顶点至少需要( )条边。
a. n b. n+1 c. n-1 d. n/2
答:c 16.一个有n个顶点的无向连通图,它所包含的连通分量个数为( )
a.0 b. 1 c. n d. n+1
答:b 17. n个顶点的强连通图至少有( )条边。
a. n b. n-1 c. n+1 d. n(n-1)
答:a 18. 在一个具有n个顶点的有向图中,若所有顶点的出度之和为s,则所有顶点的入度之和为( )
a.s b. s-1 c. s+1 d. n
答:a 19. 对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为( ①所有邻接表中的结点总数是( ②
a. n b. n+1 c. n-1 d. n+e
a. e/2 b. e c. 2e d. n+e
答:① a ② c (为什么②选c呢?因为在无向图中邻接表表示法中,每条边作一次“第一条”边,再作一次其它边的“相邻接”边。 )
20. 对于一个有向图,若一个顶点的入度为k1、出度为k2,则对应邻接表中该顶点的单链表中的结点数为( )
a.k1 b. k2 c. k1-k2 d. k1+k2
答:b 21. 在有向图g的拓扑序列中,若顶点vi在顶点vj之前,则下列情况下不可能出现的是( )
a.g中有弧 b. g中有一条从vi到vj的路径
c.g中没有弧 d. g中有一条从vj到vi的路径
答:d 22. 在一个无向图中,若两个顶点之间的路径长度为k,则该路径上的顶点数为( )
a.k b. k+1 c. k+2 d. 2k
答:b 23. 采用邻接表存储的图的深度优先遍历类似于二叉树的( )
a.中序遍历 b. 先序遍历 c. 后序遍历 d. 按层次遍历
答:b 24.用dfs遍历一个无环有向图,并在dfs算法退栈返回时打印相应的顶点,则输出的顶点序列是( )
a.逆拓扑有序的 b. 拓扑有序的 c. 无序的
答:a (请参见《严蔚敏(c语言版)数据结构》p185.算法7.13、算法7.14)
25.关键路径是事件结点网络中的( )
a.从源点到汇点的最长路径 b. 从源点到汇点的最短路径
c. 最长的回路 d. 最短的路径
答:a 26.下面不正确的说法是( )
1)在aoe-网工程中,减少任一关键活动上的权值后,整个工期也就相应的减小
2)aoe-网工程工期为关键活动上的权之和
3)在关键路径上的活动都是关键活动,而关键活动也必在关键路径上
a.(1) b. (2) c. (3) d. (1)(3)
答:a (若网中有 n条关键路径时,仅减其中一条关键路径的权值并不能使整个工期减少,故选择a.)
27.下面的叙述中不正确的是( )
a.关键活动不按期完成就会影响整个工程的完成时间
b.任何一个关键活动提前完成,将使整个工程提前完成
c.所有关键活动都提前完成,则整个工程将提前完成
d.某些关键活动若提前完成,将使整个工程提前完成
答:b (理由同26题)
28.采用邻接表存储的图的广度优先遍历类似于二叉树的( )
a.按层次遍历 b. 中序遍历 c. 后序遍历 d. 先序遍历
答:a 29.一个图中包含k个连通分量,若按深度优先(dfs)搜索方法访问所有结点,则必须调用( )次深度优先遍历算法。
a.k b. 1 c. k-1 d. k+1
答:a (一次深度优先搜索只能遍历一个连通分量,故选a.)
30.以下说法正确的是( )
a.连通分量是无向图中的极小连通子图
b.强连通分量是有向图中的极大强连通子图
c.在一个有向图的拓扑序列中若顶点a在顶点b之前,则图中必有一条弧
d.对有向图g,如果以任一顶点出发进行一次深度优先或广度优先搜索能访问到每个顶点,则该图一定是完全图
答:b (a错,连通分量是无向图中的极大连通子图;c错,拓扑序列中顶点a在顶点b之前,则图中并不一定存在一条弧;d错,如果有向图构成双向有环时,则从任一顶点出发均能访问到每个顶点,但该图却非完全图;因此,选择b.)
31.下面关于图的存储的叙述中,哪一个是正确的。 (
a.用相邻矩阵法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关
b.用相邻矩阵法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关
c.用邻接表法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关
d.用邻接表法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关
答案:a 32.对于如右下图所示的带权有向图,从顶点1到顶点5的最短路径( )
a.1,4,5 b.1,2,3,5
c.1,4,3,5 d.1,2,4,3,5
答案:d e2,则称( )v2,e133.设g1=(v1,e1)和g2=(v2,e2)为两个图, v1
a.g1是g2的子图 是g1的子图
c.g1是g2的连通分量 是g1的连通分量
答案:a 34.带权有向图g用邻接矩阵a存储,则顶点i的入度等于a中( )
a、第i行非∞的元素之和
b、第i列非∞的元素之和
c、第i行非∞且非0的元素个数
d、第i列非∞且非0的元素个数
答案:d 35.假设一个有n个顶点和e条弧的有向图用邻接表表示,则删除与某个顶点vi相关的所有弧的时间复杂度是( )
a. o(n) b.o(e) c.o(n+e) d.o(n*e)
答案:c填空题:
36.一个无向图有n个顶点和e条边,则所有顶点的度的和即 ( 表示顶点i的度)=
答:2e (一条边被两个顶点使用)
37.若无向图g的顶点度数的最小值大于或等于时,g至少有一条回路。
答:2 38.一个连通图的是一个极小连通子图。
重大2023年研究生试题。)
答:生成树
39.设无向图g的顶点数为n,图g最少有条边,最多有条边。若g为有向图,有n个顶点,则图g最少有条边,最多有条边。
具有n个顶点的无向完全图,边的总数为条;而具有n个顶点的有向完全图中,边的总数有条。
答:0 n(n-1)/2 0 n(n-1) n(n-1)/2 n(n-1)
注*:设每个结点都有n-1条弧线从自己出发分别射向其它各个结点的话,则n个结点共有n(n-1) 条有向弧线存在;但是,如此一来任两个结点之间都会有两条相向而指的弧线存在,这就是所谓的有向完全图。如果我们限定任意两个结点之间都有且仅有一条无向的连线存在,则整个图的连线总数就会比有向完全图的弧线总数刚好少一半,即共有 n(n-1)条边,也就是 (n-1) 条边。
此乃所谓(无向)完全图。若能画图一试,则上述公式对错立判。请参考讲义7.
1.)40.在有n个顶点的有向图中,每个顶点的度最大可达 。
答:2(n-1) (向其它每个顶点发出一条弧,则共发出n-1条,同时从其它每个顶点接收一条弧,共接收n-1条,两者合计为2(n-1)条。)
41.在无向图g的邻接矩阵a中,若a[i][j]等于1,则a[j][i]等于 。
答:1 42.在一个图g的邻接表表示中,每个顶点的邻接表中所含的结点数,对于有向图而言等于该顶点的 ;而对于无向图而言等于该顶点的 。
答:出度数度数
43.对无向图,若它有n个顶点e条边,则其邻接表中需要个结点。其中, 个结点构成邻接表, 个结点构成顶点表。
答:2e+n 2e n
44.已知一个图的邻接矩阵表示,计算第i个结点的入度的方法是
答:求矩阵第i列非0元素的个数。
45.已知一个图的邻接矩阵表示,删除所有从第i个结点出发的边的方法是
答:将矩阵第i行全部置0
46.遍历图的过程实质上是 。breadth-first search遍历图的时间复杂度为 ,depth-first search遍历图的时间复杂度为 ,两者不同之处在于 ,反映在数据结构上的差别是
答:对每个顶点查找其邻接点的过程 o(e)(e为图中的边数) o(e) 遍历图的顺序不同 dfs采用栈存储访问过的结点,bfs采用队列存储访问过的结点
47.遍历图的基本方法有深度优先搜索和广度优先搜索,其中是一个递归过程。
答:深度优先搜索。
数据结构基础
内容简介。本书是最经典数据结构教材的最新版本,国内外大多数的同类教材都是以本书为蓝本编写而来的。本书用c作为描述语言,全面而生动地介绍了数据结构的有关知识,如数组 栈 队列 链表 树和图,以及构成所有软件基础的排序散列技术。此外,本书还介绍了各种高级或特殊数据结构,如优先级队列 高效二叉查找树 多路...
数据结构基础
文件输入输出。include include using namespace std int main file fin,fout fin fopen rscanf d x fscanf stdin,d x fout fopen w fprintf d x frpintf stdout,d x in...
数据结构基础
读万卷书,行万里路 刘彝 所属课程名称 数据结构基础。英文名称 fundamentals of data structure 所属课程编号 0901202 面向专业 计算机及电类专业。课程总学时 64 实验学时 32 课程学分 4.5 一。实验目的。通过上机实验,使学生深刻理解基础数据结构和算法的概...