好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据结构习题二ppt课件.ppt

36页
  • 卖家[上传人]:汽***
  • 文档编号:588171523
  • 上传时间:2024-09-07
  • 文档格式:PPT
  • 文档大小:1.51MB
  • / 36 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 数￿据￿结￿构习￿￿题￿￿二￿ 第四部分 树与二叉树考点一￿￿￿树的概念本考点主要考查:￿树的基本概念2 第四部分 树与二叉树考点一￿￿￿树的概念1.￿下列有关树的概念错误的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)A.￿一棵树中只有一个无前驱的结点B.￿一棵树的度为树中各个结点的度数之和C.￿一棵树中,每个结点的度数之和等于结点总数减￿1D.￿一棵树中每个结点的度数之和与边的条数相等￿【解析】本题考查树的相关概念￿￿￿￿￿￿￿￿一棵树中只有根结点没有前驱结点,￿除根结点之外,每个结点都有一个前驱结点,￿即父结点,故而￿A￿答案正确￿￿￿￿￿￿￿通常我们把一个结点拥有子树的个数称为该结点的度数,所以结点的度数之和等于除根结点外所有结点的个数,即每个结点的度数之和等于结点总数减￿1,故而￿C￿答案正确￿￿￿￿￿￿￿结点的度等于该结点子树的个数,而结点与子树之间是以边连接的,所以一棵树中每个结点的度数之和与边的条数相等,￿D￿答案正确￿￿￿￿￿￿￿一棵树的度等于结点中度数最大的结点的度数,而不是树中各结点的度数之和故而,B￿答案错误B3 第四部分 树与二叉树考点一￿￿￿树的概念2.￿有一棵树如右图所示,回答下面的问题:￿(1).￿这棵树的根结点是__________.(2).￿这棵树的叶子结点是__________.(3).￿结点￿k3￿的度是__________.(4).￿这棵树的度是__________.(5).￿这棵树的深度是__________.(6).￿结点￿k3￿的孩子结点是__________.(7).￿结点￿k3￿的父结点是__________.￿k1k2,￿k5,￿k7,￿k4234k5,￿k6k14 【解析】由图可知,(1).￿这棵树的根结点是结点￿k1。

      2).￿这棵树的叶子结点是￿k2、￿k5、￿k7、￿k4￿3).￿k3￿结点有￿2￿个孩子结点￿k5￿与￿k6,故而其度为￿24).￿树的度等于数中度最大的结点的度数,本题中度数最大的结点为根结点,度数为￿3故而,树的度为￿35).￿很显然本题的树的层数为￿4￿层,第一层(层数我们从￿1￿开始算)有结点￿k1,第二层有结点￿k2、￿k3￿和￿k4,第三层有结点￿k5￿和￿k6,第四层有结点￿k7因而,树的深度为￿46).￿k3￿结点的孩子结点为￿k5、￿k67).￿k3￿结点的父结点是结点￿k1￿￿￿第四部分 树与二叉树考点一￿￿￿树的概念5 第四部分 树与二叉树考点二￿￿￿二叉树本考点主要考查:￿二叉树包括:￿1、￿二叉树的定义及其主要特征;￿2、￿二叉树的顺序存储结构和链式存储结构;￿3、二叉树的遍历;4、￿线索二叉树的基本概念和构造￿6 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的定义及其主要特征1.设高度为￿h￿的二叉树上只有度为￿0￿和度为￿2￿的结点,则此类二叉树中所包含的结点数至少为￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)￿￿￿￿￿￿￿A.￿2h￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿2h-1￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿2h+1￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿h+1￿￿B【解析】￿高度为￿h,而且只有度数为￿0￿或者￿2￿的结点,这是什么样的树呢?如下图所示的二叉树就是一棵这样的二叉树。

      ￿由图可以观察出,除了第￿1￿层,其他每一层都是两个结点,故而总共有结点￿2￿(￿h-1)+1=2h-1￿7 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的定义及其主要特征2.￿以下说法错误的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿￿)A.￿存在这样的二叉树,对它采用任何次序遍历其结点访问序列均相同B.￿二叉树是树的特殊情形C.￿由树转换成二叉树,其根结点的右子树总是空的D.￿在二叉树只有一棵子树的情况下也要明确指出该子树是左子树还是右子树￿【解析】￿￿￿￿￿￿￿￿尽管二叉树与树有许多相似之处,但二叉树不是树的特殊情形,故而￿B￿答案错误￿￿￿￿￿￿￿对于￿A￿答案,如果二叉树中只有一个根结点,则不管采用什么样的遍历算法,所得访问序列都是一样的￿￿￿￿￿￿￿对于￿C￿答案,树转换成二叉树时,树的左孩子为树的一个孩子,第二个孩子成为其左孩子的右孩子,第三个孩子(如果存在的话)成为其左孩子的右孩子的右孩子…故而,根结点的右子树总是空的￿￿￿￿￿￿￿二叉树是有序树,其左右孩子有次序之分,即使只有一棵子树也要明确指出该子树是左子树还是右子树。

      ￿B8 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的顺序和链式存储结构1.用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组中R[1..n],结点￿R[i]若有左孩子,其左孩子的编号为结点￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿￿￿)￿A.￿R[2i+1]￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿R[2i]￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿R[i/2]￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿R[2i-1]￿B【解析】￿将完全二叉树存储在数组中￿R[1…n]中,结点￿R[i]若有左孩子,其左孩子的编号为结点￿R[2i],若有右孩子,则右孩子的编号为结点￿R[2i+1]故而,本题选择￿B￿答案值得注意的是,一般二叉树的顺序存储,将每个结点与完全二叉树上的结点相对照,然后存储在数组的相应位置中,缺少的结点用“￿0”补齐￿9 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的遍历1.￿该二叉树结点的前序遍历的序列为(￿￿￿￿￿￿￿)A.￿E、￿G、￿F、￿A、￿C、￿D、￿BB.￿E、￿A、￿G、￿C、￿F、￿B、￿DC.￿E、￿A、￿C、￿B、￿D、￿G、￿FD.￿E、￿G、￿A、￿C、￿D、￿F、￿B￿C【解析】￿前序遍历首先访问根结点,其次遍历左子树,最后遍历右子树。

      在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,即遍历左右子树时仍然采用前序遍历方法￿￿￿￿￿￿￿￿￿对题中的二叉树进行前序遍历,可以得到序列￿E→A→C→B→D→G→F,故而选择￿C答案￿10 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的遍历2.￿该二叉树结点的中序遍历的序列为￿￿￿￿￿￿(￿￿￿￿￿￿￿)A.￿A、￿B、￿C、￿D、￿E、￿G、￿FB.￿E、￿A、￿G、￿C、￿F、￿B、￿DC.￿E、￿A、￿C、￿B、￿D、￿G、￿FD.￿B、￿D、￿C、￿A、￿F、￿G、￿E￿【解析】￿中序遍历首先遍历左子树,然后访问根结点,最后遍历右子树在遍历左、右子树时,仍然先遍历左子树,再访问根结点,最后遍历右子树,即遍历左右子树时仍然采用中序遍历方法￿￿￿￿￿￿￿￿对题中的二叉树进行中序遍历,可以得到序列￿A→B→C→D→E→G→F,故而选择￿A答案￿A11 第四部分 树与二叉树考点二￿￿￿二叉树——二叉树的遍历3.￿该二叉树的按层遍历的序列为￿￿￿￿￿￿￿(￿￿￿￿￿)￿A.￿E、￿G、￿F、￿A、￿C、￿D、￿BB.￿E、￿A、￿C、￿B、￿D、￿G、￿FC.￿E、￿A、￿G、￿C、￿F、￿B、￿DD.￿E、￿G、￿A、￿C、￿D、￿F、￿B￿￿C【解析】￿层次遍历,也是常见的二叉树遍历算法。

      层次遍历二叉树,即从上到下,从左到右遍历二叉树的结点￿对题中的二叉树进行层次遍历,可以得到序列￿E→A→G→E→F→B→D,故而选择￿C￿答案￿12 第四部分 树与二叉树考点二￿￿￿二叉树——线索二叉树的基本概念和构造1.￿引入二叉线索树的目的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿￿)A.￿加快查找结点的前驱或后继的速度B.￿为了能在二叉树中方便的进行插入与删除C.￿为了能方便的找到双亲D.￿使二叉树的遍历结果唯一￿【解析】引入二叉线索树的目的是有效利用空指针域,提高遍历运算的效率,￿加快查找结点的前驱或者后继结点的速度,￿简化遍历算法对于有￿n￿个结点的线索二叉树上含有￿n+1￿条线索￿A13 2.￿在中序线索二叉树中,若某结点有右孩子,则该结点的直接后继是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿ (￿￿￿￿￿￿)A.￿左子树的最右下结点￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿右子树的最右下结点C.￿左子树的最左下结点￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿右子树的最左下结点￿第四部分 树与二叉树考点二￿￿￿二叉树——线索二叉树的基本概念和构造【解析】￿二叉树的线索化说透了就是按照某种遍历算法将结点的线索引向前驱或者后继(若不存在左孩子,则左指针引向该遍历序列的直接前驱结点;若不存在右孩子,则右指针引向该遍历序列的直接后继结点)。

      若中序遍历时,某结点有右孩子,那么该结点中序遍历的直接后继应该是其右子树的最左下的结点故而,本题选择￿D￿答案￿D14 第四部分 树与二叉树考点三￿￿￿树和森林本考点主要考查:￿1、￿树的存储结构;￿2、￿森林与二叉树的转换;￿3、￿树和森林的遍历￿￿￿￿￿￿￿￿本部分内容的命题形式比较固定,解题方法也比较固定,同学们可以通过掌握一个题的解题方法,而掌握一类题型的解题方法￿15 第四部分 树与二叉树考点三￿￿￿树和森林1.￿设￿F￿是由￿T1、￿T2￿和￿T3￿三棵树组成的森林,与￿F￿对应的二叉树为￿B,T1、￿T2￿和￿T3￿的结点数分别为￿N1、￿N2￿和￿N3,则二叉树￿B￿的根结点的左子树的结点数为￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿￿￿)A.￿N1-1￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿N2-1￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿N2+N3￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿N1+N3￿A【解析】本题道理与第￿1￿题相同￿F￿是由￿T1、￿T2￿和￿T3￿三棵树组成的森林,与￿F￿对应的二叉树为￿B,￿T1、￿T2￿和￿T3￿的结点数分别为￿N1、￿N2￿和￿N3,则二叉树￿B￿的根结点的左子树的结点数￿N1-1。

      ￿16 第四部分 树与二叉树考点四￿￿￿树和二叉树的应用本考点主要考查:￿1、￿二叉排序树;￿2、￿平衡二叉树;￿3、￿哈夫曼(Huffman)树和哈夫曼编码前两个知识点结合课本第九章出题,这里主要掌握第三个知识点17 第四部分 树与二叉树考点四￿￿￿树和二叉树的应用——哈夫曼树和哈夫曼编码1.￿由五个分别带权值为￿9,￿2,￿3,￿5,￿14￿的叶子结点构成的一棵哈夫曼树,该树的带权路径长度为￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿￿)A.￿60￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿66￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿67￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿50￿C【解析】哈夫曼树的构造过程如下:(1).￿根据给定的￿n￿个权值{w1,￿w2,￿…,￿wn},构造￿n￿棵二叉树的集合￿F￿=￿{T1,￿T2,￿…￿,￿Tn},其中每棵二叉树中均只含一个带权值为￿wi￿的根结点,其左、右子树为空树;(2).￿在￿F￿中选取根结点的权值最小的两棵二叉树,分别作为左、右子树构造一棵新的二叉树,并置这棵新的二叉树根结点的权值为其左、右子树根结点的权值之和;(3).￿从￿F￿中删去这两棵树,同时将刚生成的新树加入到￿F￿中;(4).￿重复￿(2)￿和￿(3)￿两步,直至￿F￿中只含一棵树为止。

      ￿18 由五个分别带权值为￿9,￿2,￿3,￿5,￿14￿的叶子结点构成的一棵哈夫曼树,该哈夫曼树如下图所示￿第四部分 树与二叉树考点四￿￿￿树和二叉树的应用——哈夫曼树和哈夫曼编码由上图可知,该哈夫曼树的带权路径长度为WPS=(2+3)×￿4￿+￿5￿×￿3￿+￿9￿×￿2￿+￿14￿=￿67￿19 第四部分 树与二叉树考点四￿￿￿树和二叉树的应用——哈夫曼树和哈夫曼编码2.￿设某哈夫曼树中有￿199￿个结点,则该哈夫曼树中有(￿￿￿￿￿￿￿￿)个叶子结点A.￿99￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿100￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿101￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿102￿B【解析】正如第一题所言,￿哈夫曼树其实是二叉树的一种哈夫曼树的特点是没有度为￿1￿的结点,根据二叉树的性质可知￿n0=n2+1所以,具有￿n0￿个叶子结点的二叉树具有￿n0-1个度为￿2￿的结点当￿n=199￿时,￿n0+n2=199,可知￿n0=100,￿n2=99故而,本题选择￿B￿答案￿20 第五部分 图考点一￿￿￿图的基本概念本部分考查图的基本概念,包括:￿1、顶点、边、度、完全图、子图、路径、连通图等基本概念;2、图的顶点集和边集的表示。

      本考点考查的都是图的基本内容￿21 1.连通分量指的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿)A.无向图中的极小连通子图￿B.￿￿￿￿无向图中的极大连通子图C.￿￿￿￿有向图中的极小连通子图￿D.￿￿￿￿有向图中的极大连通子图￿￿第五部分 图考点一￿￿￿图的基本概念B【解析】本题考查连通分量的基本概念连通分量是针对无向图而言的,是无向图中的极大连通子图(与极小连通子图进行区别)如下图左图所示,无向图￿G￿有￿3￿个连通分量,分别如右图所示￿22 第五部分 图考点二￿￿￿图的存储及基本操作本考点考查图的邻接矩阵、邻接表、邻接多重表和十字链表四种存储结构表示及相应的空间复杂度￿23 第五部分 图考点二￿￿￿图的存储及基本操作1.￿图的邻接矩阵表示法适用于表示￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿)A.￿无向图￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿有向图C.￿稠密图￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿稀疏图￿【解析】￿常见的图的存储方式有主要有两种:邻接矩阵和邻接表￿邻接矩阵属于顺序存储结构,邻接表属于链式存储结构。

      邻接矩阵易于实现图的操作,但对稀疏图而言尤其浪费空间￿故而,邻接矩阵一般用于存储稠密图(邻接表一般适用于稀疏图)￿C24 2.￿带权有向图￿G￿用邻接矩阵￿A￿存储,则顶点￿i￿的入度等于￿A￿中(￿￿￿￿￿)A.￿第￿i￿行非无穷的元素之和B.￿第￿i￿列非无穷且非￿0￿的元素个数C.￿第￿i￿行非无穷且非￿0￿的元素个数D.￿第￿i￿行与第￿i￿列非无穷且非￿0￿的元素之和￿第五部分 图考点二￿￿￿图的存储及基本操作【解析】￿对于邻接矩阵表示的有向图,第￿i￿行表示的是顶点￿Vi的出度,而第￿i￿列表示的是顶点￿Vi的入度带权图不同于不带权图,带权图￿A[i][j]=x￿表示从Vi到Vj的边的权值为￿x,而在不带权图中,邻接矩阵中只有￿0、￿1￿两个值,值为￿1￿表示从￿Vi到Vj有边,为￿0￿则表示没有边故而,第￿i￿列非无穷且非￿0￿元素的元素个数之和,即为顶点￿A￿的入度￿B25 第五部分 图考点三￿￿￿图的遍历本考点主要考查图的深度优先、￿广度优先搜索遍历和层次遍历的过程￿请同学们掌握用邻接表和邻接矩阵存储表示下,图的深度优先遍历、广度优先遍历和层次遍历的方法和时间复杂度。

      ￿26 第五部分 图考点三￿￿￿图的遍历1.￿已知一有向图的邻接表存储结构如下图所示1).￿根据有向图的深度优先遍历算法,从顶点￿v1￿出发,所得到的顶点序列是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿)A.￿v1,v2,v3,v5,v4￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿v1,v2,v3,v4,v5C.￿v1,v3,v4,v5,v2￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿v1,v4,v3,v5,v2(2).￿根据有向图的广度优先遍历算法,从顶点￿v1￿出发,所得到的顶点序列是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿)A.￿v1,v2,v3,v4,v5￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿v1,v3,v2,v4,v5C.￿v1,v2,v3,v5,v4￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿v1,v4,v3,v5,v2CB27 第五部分 图考点三￿￿￿图的遍历【解析】￿为了说明深度优先遍历和广度优先遍历,我们给出了本题。

      请同学们多留意遍历方法1).￿从顶点￿v1￿出发,发起深度优先遍历,经过￿v1→v3,再￿v3→v4,￿v4￿没有后续顶点,转回￿v3,￿v3￿的后续顶点中还有￿v5￿没有被遍历过,于是找到￿v3→v5,再由￿v5→v2￿因而,得到一个序列￿v1→v3→v4→v5→v2选择C答案2).￿从顶点￿v1￿出发,发起广度优先遍历因为从￿v1￿发出,有一条有向边￿v1→v3因此,有序列￿v1→v3→v2,可有序列￿v1→v3→v2→v4→v5,选择￿B￿答案28 第五部分 图考点四￿￿￿图的应用本考点主要考查图的应用,包括最小生成树、最短路径、拓扑排序和关键路径本考点特别重要29 第五部分 图考点四￿￿￿图的应用——最小生成树1.￿已知一个图￿G￿如图所示,在该图的最小生成树中各边上数值之和为￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿ (￿￿￿￿￿)A.￿21￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿26￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿28￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿33B30 第五部分 图考点四￿￿￿图的应用——最小生成树【解析】￿我们可以利用克鲁斯卡尔算法构造最小生成树,过程如图所示。

      由图可知,原图的最小生成树各边上的权值之和为￿2+3+4+7+10=26,故而选择￿B￿答案31 第五部分 图考点四￿￿￿图的应用——拓扑排序1.￿已知有向图￿G￿=￿(V,￿E),￿其中￿V￿=￿{￿V1,￿V2,￿V3,￿V4,￿V5,￿V6,￿V7},E={,￿,￿,￿,￿,￿,￿,￿,},￿G￿的拓扑序列是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)A.￿V1,￿V3,￿V4,￿V6,￿V2,￿V5,￿V7￿￿￿￿￿￿￿￿￿￿B.￿V1,￿V3,￿V5,￿V6,￿V4,￿V2,￿V7C.￿V1,￿V3,￿V4,￿V5,￿V2,￿V6,￿V7￿￿￿￿￿￿￿￿￿￿￿D.￿V1,￿V2,￿V5,￿V3,￿V4,￿V6,￿V7A32 第五部分 图考点四￿￿￿图的应用——拓扑排序【解析】￿本题考查有向图的拓扑排序方法本题中的图￿G￿如图所示对图G￿进行拓扑排序,其中的一个排序过程如图所示由图￿5.24￿可得到一个拓扑序列为￿V1、￿V3、￿V4、￿V6、￿V2、￿V5、￿V7。

      当然,本题的图G￿的拓扑排序可以得到多个正确的序列,比如￿V1、￿V2、￿V3、￿V4、￿V5、￿V6、￿V7￿或￿V1、￿V3、V4、￿V2、￿V6、￿V5、￿V7￿等等本题选A33 第五部分 图考点四￿￿￿图的应用——拓扑排序2.￿在有向图￿G￿的拓扑序列中,若顶点￿Vi￿在顶点￿Vj￿之前,则下列情形不可能出现的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)A.￿G￿中有弧￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿G￿中有一条从￿Vi￿到￿Vj￿的路径C.￿G￿中没有弧￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿G￿中有一条从￿Vj￿到￿Vi￿的路径【解析】在有向图的拓扑排序中,若顶点￿Vi￿在顶点￿Vj￿之前,未必有￿Vi￿到￿Vj￿的路径,如上图中的序列(￿V1,￿V3,￿V4,￿V6,￿V2,￿V5,￿V7)￿中,￿V3￿在￿V4￿之前,但是并不存在￿V3到￿V4￿的路径故而,￿B￿答案可能出现而￿V1￿在￿V7￿之前,也并没有弧,故而￿A、￿C都可能出现。

      若存在一条￿Vj￿到￿Vi￿的路径,那么￿Vi￿的完成,必须以￿Vj￿的完成为前提,但是拓扑排序中￿Vi￿在￿Vj￿之前￿显然,如果假设成立的话,图￿G￿中存在环,不能进行拓扑排序故而,￿D不可能出现D34 第五部分 图考点四￿￿￿图的应用——关键路径1.￿关于￿AOE￿网,￿下面的叙述中不正确的是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)A.￿关键活动不按期完成可能会影响整个工程的完成时间B.￿任何一个关键活动提前完成,将使整个工程提前完成C.￿所有关键活动都提前完成,则整个工程将提前完成D.￿某些关键活动若提前完成,可能会使整个工程提前完成B【解析】￿在￿AOE￿网中,并不是加快任何一个关键活动都可以缩短整个工程完成的时间,只有加快那些包括在所有的关键路径上的关键活动才能达到这个目的￿也就是说,￿只有在不改变￿AOE￿网的关键路径的前提下,加快包含在关键路径上的关键活动才可以缩短整个工程的完成时间35 第五部分 图考点四￿￿￿图的应用——最短路径1.￿对于有￿n￿个顶点的有向图,由迪杰斯特拉(Dijkstra)算法求从某一个源点到其余各顶点的最短路径的时间复杂度是￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿(￿￿￿￿￿)A.￿O(1)￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿B.￿O(n)￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿C.￿O(n2)￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿D.￿O(n3)C【解析】￿Dijkstra算法时间复杂度为￿O(n2)。

      Floyd算法的时间复杂度为O(n3))36 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.