数据结构第7章 图习题培训讲学
数据结构与算法课件:DS07_图 习题

d
【南京理工大学 2000 一.20 (1.5分)】 D
2020/9/28
f
7
自测题
下面哪一方法可以判断出一个有向图是否 有环(回路):
A. 深度优先遍历 B. 拓扑排序 C. 求最短路径 D. 求关键路径
【东北大学 2000 4.2(4分)】 AB
8 2020/9/28
自测题
在有向图G的拓扑序列中,若顶点Vi在顶点 Vj之前,则下列情形不可能出现的是( )。
void AdjListToAdjMatrix(AdjList gl, AdjMatrix gm)
∥将图的邻接表表示转换为邻接矩阵表示
{ for(i=0;i<n;i++) ∥设图有n个顶点,邻接矩阵初始化
for(j=0;j<n;j++) gm[i][j]=0;
for(i=0;i<n;i++)∥取第一邻接点,填邻接矩阵元素值,并求下一邻接点
【哈尔滨工业大学2004二.3(1分)】
【北京工业大学1999一.1(2分)】
【北方交通大学1999一.7(3分)】
B
11
2020/9/28
自测题
下列有关图的说法错误的是( )
A. 在有向图中,出度为0的结点称为叶子。 B. 用邻接矩阵表示图,容易判断任意两个结点之间
是否有边相连,并求得各结点的度。
C. 按深度方向遍历图和先根次序遍历树类似,得到 的结果是唯一的。
D. 若有向图G中从结点Vi到结点Vj有一条路径,则在 图G的结点的线性序列中结点Vi必在结点Vj之前的话 ,则称为一个拓扑序列。
C
12 2020/9/28
算法举例 略 给出以十字链表作存储结构,建立图的算
数据结构第7章习题ppt课件

Data Structure
完整版P21P.T0课4.2件021
Page 3
已知以二维数组表示的图的邻接矩阵如图所示。试分别画 出自顶点出发进行遍历所得的深度优先生成树和广度优先 生成树。
Data Structure
完整版0课4.2件021
Page 4
请对下边的无向带权图,
❖ 写出它的邻接矩阵,并按普里姆算法求其最小生成树; ❖ 写出它的邻接表,并按克鲁斯卡尔算法求其最小生成树。
Data Structure
完整版P21P.T0课4.2件021
Page 9
Data Structure
完整版P21P.T0课4.2件021
Page 7
试利用 Dijkstra 算法求下图中从顶点 a 到其它各顶点 间的最短路径,写出执行算法过程中各步的状态。
Data Structure
完整版P21P.T0课4.2件021
Page 8
试利用 Floyd 算法求下图所示有向图中各对顶点之间的 最短路径。
Data Structure
完整版P21P.T0课4.2件021
Page 5
试列出下图中全部可能的拓扑有序序列。
Data Structure
完整版P21P.T0课4.2件021
Page 6
对于下图所示的 AOE 网络,计算各活动弧的 e(ai) 和 l(aj) 函数值,各时间(顶点)的 ve(vi) 和 vl(vj) 函数 值;列出各条关键路径。
数据结构
计算机科学与技术学院
基础知识题
已知有向图,请给出该图的 (1) 每个顶点的入/出度; (2) 邻接矩阵; (3) 邻接表; (4) 逆邻接表; (5) 强连通分量。
数据结构 第7章习题答案

第7章 《图》习题参考答案一、单选题(每题1分,共16分)( C )1. 在一个图中,所有顶点的度数之和等于图的边数的 倍。
A .1/2 B. 1 C. 2 D. 4 (B )2. 在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的 倍。
A .1/2 B. 1 C. 2 D. 4 ( B )3. 有8个结点的无向图最多有 条边。
A .14 B. 28 C. 56 D. 112 ( C )4. 有8个结点的无向连通图最少有 条边。
A .5 B. 6 C. 7 D. 8 ( C )5. 有8个结点的有向完全图有 条边。
A .14 B. 28 C. 56 D. 112 (B )6. 用邻接表表示图进行广度优先遍历时,通常是采用 来实现算法的。
A .栈 B. 队列 C. 树 D. 图 ( A )7. 用邻接表表示图进行深度优先遍历时,通常是采用 来实现算法的。
A .栈 B. 队列 C. 树 D. 图 ()8. 已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是( D )9. 已知图的邻接矩阵同上题8,根据算法,则从顶点0出发,按深度优先遍历的结点序列是A . 0 2 4 3 1 5 6 B. 0 1 3 5 6 4 2C. 0 4 2 3 1 6 5D. 0 1 2 34 6 5 ( D )10. 已知图的邻接表如下所示,根据算法,则从顶点0出发按深度优先遍历的结点序列是( A )11. 已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是A .0 2 4 3 1 5 6B. 0 1 3 6 5 4 2C. 0 1 3 4 2 5 6D. 0 3 6 1 5 4 2⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡0100011101100001011010110011001000110010011011110A .0 1 3 2 B. 0 2 3 1 C. 0 3 2 1 D. 0 1 2 3(A)12. 深度优先遍历类似于二叉树的A.先序遍历 B. 中序遍历 C. 后序遍历 D. 层次遍历(D)13. 广度优先遍历类似于二叉树的A.先序遍历 B. 中序遍历 C. 后序遍历 D. 层次遍历(A)14. 任何一个无向连通图的最小生成树A.只有一棵 B. 一棵或多棵 C. 一定有多棵 D. 可能不存在(注,生成树不唯一,但最小生成树唯一,即边权之和或树权最小的情况唯一)二、填空题(每空1分,共20分)1. 图有邻接矩阵、邻接表等存储结构,遍历图有深度优先遍历、广度优先遍历等方法。
数据结构课后习题答案第七章

第七章图(参考答案)7.1(1)邻接矩阵中非零元素的个数的一半为无向图的边数;(2)A[i][j]= =0为顶点,I 和j无边,否则j和j有边相通;(3)任一顶点I的度是第I行非0元素的个数。
7.2(1)任一顶点间均有通路,故是强连通;(2)简单路径V4 V3 V1 V2;(3)0 1 ∞ 1∞ 0 1 ∞1 ∞ 0 ∞∞∞ 1 0邻接矩阵邻接表(2)从顶点4开始的DFS序列:V5,V3,V4,V6,V2,V1(3)从顶点4开始的BFS序列:V4,V5,V3,V6,V1,V27.4(1)①adjlisttp g; vtxptr i,j; //全程变量② void dfs(vtxptr x)//从顶点x开始深度优先遍历图g。
在遍历中若发现顶点j,则说明顶点i和j间有路径。
{ visited[x]=1; //置访问标记if (y= =j){ found=1;exit(0);}//有通路,退出else { p=g[x].firstarc;//找x的第一邻接点while (p!=null){ k=p->adjvex;if (!visited[k])dfs(k);p=p->nextarc;//下一邻接点}}③ void connect_DFS (adjlisttp g)//基于图的深度优先遍历策略,本算法判断一邻接表为存储结构的图g种,是否存在顶点i //到顶点j的路径。
设 1<=i ,j<=n,i<>j.{ visited[1..n]=0;found=0;scanf (&i,&j);dfs (i);if (found) printf (” 顶点”,i,”和顶点”,j,”有路径”);else printf (” 顶点”,i,”和顶点”,j,”无路径”);}// void connect_DFS(2)宽度优先遍历全程变量,调用函数与(1)相同,下面仅写宽度优先遍历部分。
数据结构第7章树和二叉树习题课PPT课件

(2)写出按先序、中序和后
a
序遍历二叉树bt所得到的结点
b
序列;
cd
a.先序序列 ab c e d f h g i j b.中序序列e c b h f dj i g a
b.后序序列e c h f j i g d b a
ef g hi
j
7.1 设二叉树bt的9 10 lchild 0 0 2 3 7 5 8 0 10 1 data j h f d b a c e g i rchild 0 0 0 9 4 0 0 0 0 0
(2)写出按先序、中序和后
a
序遍历二叉树bt所得到的结点
b
序列;
cd
a.先序序列 ab c e d f h g i j e f
g
b.中序序列e c b h f dj i g a
hi
j
7.1 设二叉树bt的一种存储结构如下:
1 2 3 4 5 6 7 8 9 10 lchild 0 0 2 3 7 5 8 0 10 1 data j h f d b a c e g i rchild 0 0 0 9 4 0 0 0 0 0
789 9 45
23
15
78
7.3 给定权值集w={2,3,4,7,8,9},试构造关于w 的的一颗哈夫曼树,并求其带权路径长度WPL。
99 45
15
78
23
7.3 给定权值集w={2,3,4,7,8,9},试构造关于w 的的一颗哈夫曼树,并求其带权路径长度WPL。
99 45
15
78
18 2 3
补1 T={(a,2),(b,3),(c,4),(d,7),(e,9)}为带权字符集, 试构造关于该字符集的一颗哈夫曼树,求其加权路 径长度WPL、T中每个字符的哈曼夫编码和哈夫曼 编码的平均长度。
第7章 图习题课

算法与数据结构
第6章 树和二叉树习题课
选择题
1、设无向图的顶点个数为n,则该图最多有( )条边。 2 A.n-1 B.n(n-1)/2 C. n(n+1)/2 D.0 E.n 2、一个n个顶点的连通无向图,其边的个数至少为( )。 A.n-1 B.n C.n+1 D.nlogn; 3、要连通具有n个顶点的有向图,至少需要( )条边。 A.n-l B.n C.n+l D.2n 4、一个有n个顶点的图,最少有( )个连通分量,最多有 ( )个连通分量。 A.0 B.1 C.n-1 D.n 5、在一个无向图中,所有顶点的度数之和等于所有边数( ) 倍,在一个有向图中,所有顶点的入度之和等于所有顶点出度 之和的( )倍。 A.1/2 B.2 C.1 D.4
算法与数据结构
第6章 树和二叉树习题课
6、为了实现图的广度优先搜索,除了一个标志数组标志已访问 的图的结点外,还需______存放被访问的结点以实现遍历。 7、构造连通网最小生成树的两个典型算法是______。 8、Prim(普里姆)算法适用于求______网的最小生成树; kruskal(克鲁斯卡尔)算法适用于求______网的最小生成树。 9、有一个用于n个顶点连通带权无向图的算法描述如下: (1)设集合T1与T2,初始均为空; (2)在连通图上任选一点加入T1; (3)以下步骤重复n-1次: a.在i属于T1,j不属于T1的边中选最小权的边; b.该边加入T2。 上述算法完成后,T2中共有______条边,该算法称______算法, T2中的边构成图的______。
算法与数据结构
第6章 树和二叉树习题课
应用题
1、设有数据逻辑结构为: B = (K, R), K = {k1, k2, …, k9} R={<k1, k3>, <k1, k8>, <k2, k3>,<k2, k4>, <k2, k5>, <k3, k9>,<k5, k6>, <k8, k9>, <k9, k7>, <k4, k7>, <k4, k6>} (1).画出这个逻辑结构的图示。 (2).相对于关系r, 指出所有的开始顶点和终端顶点。 (3).分别对关系r中的开始顶点,举出一个拓扑序列的例子。 (4).分别画出该逻辑结构的正向邻接表和逆向邻接表。
数据结构(C++版)第7章 图-2

第6章 树与二叉树
第2讲
1
本章分为(4~5)讲
第1讲 7.1 图的基本概念 7.2 图的存储结构 -7.2.1
供教师参考
第2讲 7.4 图的存储结构-7.2.2, 7.2.3, 7.2.4 7.3 图的遍历与连通性
第 3讲
7.4 图的最小生成树 7.5 最短路径 第4讲 7接表信息
void AdjTWGraph::PrintOut() { Edge *pre,*curr; for ( int i=0; i<numV; i++ ) { cout<<"\n 顶点编号、它的邻接点编号和边的权值:"; cout<<" "<<i+1<<" "<<Vertices[i].data; curr=Vertices[i].adj; //找顶点vi的邻接边 while ( curr!=NULL ) {cout<<" v"<<curr->dest<<" w"<<curr->weight; curr=curr->next; } cout<<endl; }// for }
15
有向图的正邻接表
在无向图的邻接表中,求顶点v的度比 较方便,只要遍历第v条链表,统计该链表 中边结点的个数便可得到顶点v的度。 有向图的正邻接表中,第v条链表是由 以顶点v为弧尾的若干条弧的弧结点组成, 每个弧结点的dest域是该条弧的弧头结点 在图中的位置(顶点在数组中的下标)。第 v条链表中弧结点的个数就是顶点v的出度。
8
(完整word版)数据结构 第七章图:习题

0 10 ∞ ∞
15 0 6 ∞
3 ∞ 0 4
∞ 8 2 0
(2)采用弗洛伊德算法求最短路径的过程如下:
7.对于有向无环图,
(1)叙述求拓扑有序序列的步骤。
(2)对于题图7-6所示的有向图,写出它的4个不同的拓扑有序序列。
【解答】(1)参见7.6节的介绍。
(2)它的4个不同的拓扑有序序列是:12345678,12354678,12347856,12347568。
(6)在V-S中找出最近的顶点5,加入S中,即s口={l,3,2,6,4,5}。此时S中包含了图的所有顶点,算法结束。最终dist[]={0,19,15,29,29,25),path[]={1,3,l,6,2, 3}。
由此得到:
从顶点1到顶点2的最短路径长度为:19 最短路径为:2<-3<-1
从顶点l到顶点3的最短路径长度为:15 最短路径为:3<-1
dist[4]=min{dist[4], dist[6]+cost[6][4])=min{∞..,25+4}=29,
则有dist[]={0, 19, 15, 29, 29, 25}, path[]={l,3,1,6,2,3}。
(5)在V-S中找出最近的顶点4,加入S中,即s[]:{l,3,2,6,4},并重新计算顶点l到达顶点5的距离,此时不需要修改dist值,则有dist[]={0,19,15,29,29,25),path[]={l,3, l,6,2, 3}。
(1)有n个顶点的无向连通图最多需要多少条边?最少需要多少条边?
(2)表示一个具有1000个顶点、1000条边的无向图的邻接矩阵有多少个矩阵元素?有多少非零元素?是否为稀疏矩阵?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构第7章图习题第7章图一、单项选择题1.在一个无向图G中,所有顶点的度数之和等于所有边数之和的______倍。
A.l/2 B.1C.2 D.42.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的______倍。
A.l/2 B.1C.2 D.43.一个具有n个顶点的无向图最多包含______条边。
A.n B.n+1C.n-1 D.n(n-1)/24.一个具有n个顶点的无向完全图包含______条边。
A.n(n-l) B.n(n+l)C.n(n-l)/2 D.n(n-l)/25.一个具有n个顶点的有向完全图包含______条边。
A.n(n-1) B.n(n+l)C.n(n-l)/2 D.n(n+l)/26.对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为______。
A.n B.n×nC.n-1 D.(n-l) ×(n-l)7.无向图的邻接矩阵是一个______。
A.对称矩阵B.零矩阵C.上三角矩阵D.对角矩阵8.对于一个具有n个顶点和e条边的无(有)向图,若采用邻接表表示,则表头向量的大小为______。
A.n B.eC.2n D.2e9.对于一个具有n个顶点和e条边的无(有)向图,若采用邻接表表示,则所有顶点邻接表中的结点总数为______。
A.n B.eC.2n D.2e10.在有向图的邻接表中,每个顶点邻接表链接着该顶点所有______邻接点。
A.入边B.出边C.入边和出边D.不是入边也不是出边11.在有向图的逆邻接表中,每个顶点邻接表链接着该顶点所有______邻接点。
A.入边B.出边C.入边和出边D.不是人边也不是出边12.如果从无向图的任一顶点出发进行一次深度优先搜索即可访问所有顶点,则该图一定是______。
A.完全图B.连通图C.有回路D.一棵树13.采用邻接表存储的图的深度优先遍历算法类似于二叉树的______算法。
A.先序遍历B.中序遍历C.后序遍历D.按层遍历14.采用邻接表存储的图的广度优先遍历算法类似于二叉树的______算法。
A.先序遍历B.中序遍历C.后序遍历D.按层遍历15.如果无向图G必须进行二次广度优先搜索才能访问其所有顶点,则下列说法中不正确的是______。
A.G肯定不是完全图B.G一定不是连通图C.G中一定有回路D.G有二个连通分量16.下列有关图遍历的说法不正确的是______。
A.连通图的深度优先搜索是一个递归过程B.图的广度优先搜索中邻接点的寻找具有“先进先出”的特征C.非连通图不能用深度优先搜索法D.图的遍历要求每一顶点仅被访问一次17.下列说法中不正确的是______。
A.无向图中的极大连通子图称为连通分量B.连通图的广度优先搜索中一般要采用队列来暂存刚访问过的顶点C.图的深度优先搜索中一般要采用栈来暂存刚访问过的顶点D.有向图的遍历不可采用广度优先搜索方法18.一个有向图G的邻接表存储如下图7-1所示,现按深度优先搜索遍历,从顶点v1出发,所得到的顶点序列是______。
A.v1,v2,v3,v4,v5B.v1,v2,v3,v5,v4C .v 1,v 2,v 4,v 5,v 3D .v 1,v 2,v 5,v 3,v 4图7-1 一个有向图的邻接表19.对图7-2所示的无向图,从顶点1开始进行深度优先遍历,可得到顶点访问序列______。
A .1,2,4,3,5,7,6 B .1,2,4,3,5,6,7 C .1,2,4,5,6,3,7 D .1,2,3,4,5,7,6图7-2 一个无向图20.对图7-2所示的无向图,从顶点1开始进行广度优先遍历,可得到顶点访问序列______。
A .1,3,2,4,5,6,7B .1,2,4,3,5,6,7C .1,2,3,4,5,7,6D .2,5,1,4,7,3,621.一个无向连通图的生成树是含有该连通图的全部顶点的______。
A .极小连通子图 B .极小子图 C .极大连通子图D .极大子图22.设无向图 G=(V, E) 和G’= (V’, E’),如果G’为G的生成树,则下列说法中不正确的是______。
A.G’为G的连通分量 B.G’为G的无环子图C.G’为G的子图 D.G’为G的极小连通子图且V’=V23.任意一个无向连通图______最小生成树。
A.只有一棵B.有一棵或多棵C.一定有多棵D.可能不存在24.对于含有n个顶点的带权连通图,它的最小生成树是指图中任意一个________。
A.由n-1条权值最小的边构成的子图。
B.由n-1条权值之和最小的边构成的子图。
C.由n-1条权值之和最小的边构成的连通子图。
D.由n个顶点构成的边的权值之和最小的生成树。
25.若一个有向图中的顶点不能排成一个拓扑序列,则可断定该有向图_______。
A.是个有根有向图 B.是个强连通图C.含有多个入度为0的顶点 D.含有顶点数目大于1的强连通分量26.判定一个有向图是否存在回路除了可以利用拓扑排序方法外,还可以用____。
A.求关键路径的方法B.求最短路径的Dijkstra算法C.广度优先遍历算法D.深度优先遍历算法27.求最短路径的Dijkstra算法的时间复杂度为______。
A.O(n) B.O(n+e)C.O(n2) D.O(ne)28.求最短路径的Floyd算法的时间复杂度为______。
A.O(n) B.O(ne)C.O(n2) D.O(n3)29.关键路径是事件结点网络中______。
A.从源点到汇点的最长路径B.从源点到汇点的最短路径C.最长的回路D.最短的回路30.下面说法不正确的是______。
A.在AOE网中,减少任一关键活动的权值后,整个工期也就相应减少B.AOE网工程工期为关键活动的权值和C.在关键路径上的活动都是关键活动,而关键活动也必须在关键路径上D.A和B31.下面说法不正确的是______。
A.关键活动不按期完成就会影响整个工程的完成时间B.任何一个关键活动提前完成,将使整个工程提前完成C.所有关键活动都提前完成,则整个工程提前完成D.某些关键活动若提前完成,将使整个工程提前完成二、填空题1.对于具有n个顶点的无向图G最多有_________条边。
2.对于具有n个顶点的强连通有向图G至少有_________条边。
3.对于具有n个顶点的有向图,每个顶点的度最大可达___________。
4.若无向图G的顶点度数最小值大于___________时,G至少有一条回路。
5.对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为___________,所有邻接表中的结点总数是__________。
6.已知一个有向图的邻接矩阵表示,删除所有从第i个结点出发的弧的方法是____________。
7.对于n个顶点的无向图,采用邻接矩阵表示,求图中边数的方法是__________,判断任意两个顶点i和j是否有边相连的方法是__________,求任意一个顶点的度的方法是___________。
8.对于n个顶点的有向图,采用邻接矩阵表示,求图中边数的方法是_________,判断任意两个顶点i和j是否有边相连的方法是__________,求任意一个顶点的度的方法是__________。
9.无向图的连通分量是指___________。
10.已知图G的邻接表如图7-3所示,从顶点v1出发的深度优先搜索序列为________,从顶点1出发的广度优先搜索序列为_____________。
图7-3 图G的邻接表11.n个顶点连通图的生成树一定有__________条边。
12.一个连通图的___________是一个极小连通子图。
13.Prim算法适用于求_________的网的最小生成树,Kruskal算法适用于求________的网的最小生成树。
14.在AOV图中,顶点表示________,有向边表示________。
15.可以进行拓扑排序的有向图一定是_________。
16.从源点到汇点长度最长的路径称为关键路径,该路径上的活动称为________。
17.Dijkstra算法从源点到其它各顶点的路径长度按________次序依次产生,该算法在边上的权出现_________情况时,不能正确产生最短路径。
18.求从某源点到其余各项点的Dijkstra算法在图的顶点数为10,用邻接矩阵表示图时计算时间约为10ms,则在图的顶点数为40时,计算时间约为_________ms。
三、判断题1.具有n个顶点的无向图至多有n(n-1)条边。
2.有向图中各顶点的入度之和等于各顶点的出度之和。
3.邻接矩阵只储存了边的信息,没有存储顶点的信息。
4.对同一个有向图,只保存出边的邻接表中结点的数目总是和只保存入边的邻接表中结点的数目一样多。
5.如果表示图的邻接矩阵是对称矩阵,则该图一定是无向图。
6.如果表示有向图的邻接矩阵是对称矩阵,则该有向图一定是有向完全图。
7.如果表示某个图的邻接矩阵不是对称矩阵,则该图一定是有向图。
8.连通分量是无向图的极小连通子图。
9.强连通分量是有向图的极大连通子图。
10.对有向图G,如果以任一顶点出发进行一次深度优先或广度优先搜索能访问到每一个顶点,则该图一定是完全图。
11.连通图的广度优先搜索中一般要采用队列来暂时刚访问过的顶点。
12.图的深度优先搜索中一般要采用栈来暂时刚访问过的顶点。
13.有向图的遍历不可采用广度优先搜索方法。
14.连通图的生成树包含了图中所有顶点。
15.设G为具有n个顶点的连通图,如果其中的某个子图有n个顶点,n-1条边,则该子图一定是G的生成树。
16.最小生成树是指边数最小的生成树。
17.从n个顶点的连通图中选取n-1条权值最小的边,即可构成最小生成树。
18.只要无向网中没有权值相同的边,其最小生成树就是惟一的。
19.只要无向网中有权值相同的边,其最小生成树就可能不是惟一的。
20.有环图也能进行拓扑排序。
21.拓扑排序算法仅适用于有向无环图。
22.任何有向无环图的结点都可以排成拓扑排序,而且拓扑序列不惟一。
23.关键路径是由权值最大的边构成的。
24.在AOE网中,减小任一关键活动上的权值后,整个工期也就相应减小。
25.在AOE网中工程工期为关键活动上权值之和。
26.在关键路径的活动都是关键活动,而关键活动未必在关键路径上。
27.关键活动不按期完成就会影响整个工程的完成时间。
28.所有关键活动都提前完成,则整个工程将提前完成。
29.某些关键活动若提前完成,将可能使整个工程提前完成。
30.求单源最短路径的狄克斯特拉算法不适用于有回路的有向网。
四、简答题1.图G是一个非连通无向图,共有28条边,则该图至少有多少个顶点?2.用邻接矩阵表示图时,矩阵元素的个数与顶点个数是否相关?与边的条数是否有关?3.对于稠密图和稀疏图,就存储而言,采用邻接矩阵和邻接表哪个更好些?4.请回答下列关于图的一些问题:(1)有n个顶点的有向强连通图最多有多少条边?最少有多少条边?(2)表示一个有1000个顶点,1000条边的有向图的邻接矩阵有多少个矩阵元素?是否为稀疏矩阵?(3)对于一个有向图,不用拓扑排序,如何判断图是否存在环?5.对n个顶点的无向图和有向图,采用邻接表表示时,如何判别下列有关问题?(1)图中有多少条边?(2)任意两个顶点i和j是否有边相连?(3)任意一个顶点的度是多少?6.给出如图7-4所示的无向图G的邻接矩阵和邻接表两种存储结构。