苏州大学数据库期末练习(附答案).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、填空题 在任何需要数据反转的问题里,首先应考虑用 栈 来保存数据。 2、在顺序线性表下,根据位置来进行元素的插入和删除,主要的时间花费在 移动后续元素位置 ;在单链表下进行元素的插入和删除,主要时间花费在 找到目标元素位置 。 具有n个顶点的无向图,至少要有 n-1 条边,才能保证该图是连通图。 用二分查找方法进行查找,要求数据文件应为有序序列,且限于顺序存储结构。 5、在哈希查找中,评判一个哈希函数优劣的两个主要指标是: 散列分布均匀性和冲突解决方法。 6、由三个结点构成的二叉树,共有 5 种不同的形状。 7、高度为h (h ≥ 1)的完全二叉树的结点数在2n-1和 2n-1之间。 (设只有1个根结点的二叉树高度为1) 8、对于有n (n ≥ 1)个顶点的连通图,其生成树有 n-1 条无向边。n(n ≥ 1)个顶点的有向完全图有 n(n-1) 条有向边。 9、图的深度优先搜索遍历类似于树的 先序 遍历。图的广度优先搜索遍历需要用到的辅助数据结构是 队列 。 10、以关键字比较为基础的排序方法所能达到的最好时间复杂度为 n 。排序过程中总的关键字比较次数与记录的初始排列顺序无关的排序方法有 选择排序 。稳定的算法有 冒泡排序、插入排序 。 二、应用题 1、简述拓扑排序的实际意义,并写出下图的1个深度优先拓扑序列和1个广度优先拓扑序列。 拓扑排序的实际意义:如果按照拓扑排序的顶点次序,在开始每一项活动时,能够保证它的所有前驱活动都已经完成,从而使整个工程顺序进行,不会出现冲突情况。 DFS:acfhdgbe BFS:acdfhbeg 2、已知一个无向连通图如图所示: 请用Prim算法构造该无向图的最小生成树,给出详细求解过程。 分别用邻接矩阵和邻接表这两种存储结构表示该无向图。 请写出一个合理的从顶点a出发得到的DFS序列(假设邻接表中边表按照递增序)。 请写出一个合理的从顶点a出发得到的BFS序列(假设邻接表中边表按照递增序)。 3、简述插入排序的基本思想,并对以下关键字集合,{72,73,71,23,94,16,05,68}进行插入排序,计算总的比较次数。 1:72 73 71 23 94 16 05 68 2:71 72 73 23 94 16 05 68 3:23 71 72 73 94 16 05 68 4:23 71 72 73 94 16 05 68 5:16 23 71 72 73 94 05 68 6:05 16 23 71 72 73 94 68 7:05 16 23 68 71 72 73 94 4、已知如下所示长度为12的表(Jan,Feb,Mar,Apr,May,June,July,Aug,Sep,Oct,Nov,Dec),试按表中元素的字符串大小顺序依次插入一棵初始为空的二叉查找树。二叉查找树是如下定义的: (1) 左子树不空,则左子树上的所有结点的值均小于根结点的值 (2) 右子树不空,则右子树上的所有结点的值均大于根结点的值 在二叉查找树中删除一个给定的结点p有三种情况 (1) 结点p无左右子树,则直接删除该结点,修改父节点相应指针 (2) 结点p有左子树(右子树),则把p的左子树(右子树)接到p的父节点上 (3) 左右子树同时存在,则有三种处理方式 a. 找到结点p的中序直接前驱结点s,把结点s的数据转移到结点p,然后删除结点s,由于结点s为p的左子树中最右的结点,因而s无右子树,删除结点s可以归结到情况(2)。严蔚敏数据结构P230-231就是该处理方式。 b. 找到结点p的中序直接后继结点s,把结点s的数据转移到结点p,然后删除结点s,由于结点s为p的右子树总最左的结点,因而s无左子树,删除结点s可以归结到情况(2)。算法导论第2版P156-157该是该处理方式。 c. 找到p的中序直接前驱s,将p的左子树接到父节点上,将p的右子树接到s的右子树上,然后删除结点p。 (1)画出插入完成之后的二叉查找树; (2) 1+2*2+3*3+4*3+5*2+6*1)/12=42/12=3.5 (3)画出删除Jan后的二叉查找树。 三、算法设计题 1、设计一个递归算法,判断二叉树中是否含有度为1的结点。 templateclass Entry bool Binary_treeentry::recurisive_has_degree1(Binary_nodeEntry*sub_root) { if (sub_root==NULL) return false; if (sub_root-left==NULL sub_root-right==NULL)

文档评论(0)

moon8888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档