网站大量收购独家精品文档,联系QQ:2885784924

大学《数据结构》期末考试考试练习题.docxVIP

大学《数据结构》期末考试考试练习题.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

大学《数据结构》期末考试考试练习题

选择题

1.一个栈的入栈序列是1,2,3,4,5,则不可能的出栈序列是()。

A.5,4,3,2,1

B.4,5,3,2,1

C.4,3,5,1,2

D.1,2,3,4,5

答案:C

解析:栈是后进先出的数据结构。对于选项A,先将1,2,3,4,5依次入栈,然后依次出栈,可得到5,4,3,2,1;选项B,先将1,2,3,4入栈,4出栈,再将5入栈,5出栈,然后3,2,1依次出栈,可得到4,5,3,2,1;选项D,1入栈,1出栈,2入栈,2出栈,以此类推,可得到1,2,3,4,5;而选项C,4,3出栈后,栈内剩下1,2,此时5入栈再出栈,栈内剩下1,2,应该2先出栈,而不是1先出栈,所以C不可能。

2.以下哪种排序算法的平均时间复杂度为$O(nlogn)$()。

A.冒泡排序

B.插入排序

C.快速排序

D.选择排序

答案:C

解析:冒泡排序、插入排序和选择排序的平均时间复杂度都是$O(n^2)$,快速排序的平均时间复杂度为$O(nlogn)$。

3.在一个具有n个顶点的无向图中,要连通全部顶点至少需要()条边。

A.n

B.n1

C.n+1

D.2n

答案:B

解析:对于一个具有n个顶点的无向图,要使其连通,至少需要n1条边,构成一个树的结构。

填空题

1.算法的五个重要特性是有穷性、______、可行性、输入和输出。

答案:确定性

解析:算法的确定性是指算法的每一步骤都必须有明确的定义,不允许有歧义。

2.线性表有两种存储结构:顺序存储结构和______存储结构。

答案:链式

解析:线性表的顺序存储结构是用一组地址连续的存储单元依次存储线性表的数据元素,而链式存储结构是用一组任意的存储单元存储线性表的数据元素,通过指针来表示元素之间的逻辑关系。

3.深度优先搜索遍历图的时间复杂度为______,广度优先搜索遍历图的时间复杂度为______。

答案:$O(n+e)$;$O(n+e)$

解析:对于一个具有n个顶点和e条边的图,无论是深度优先搜索还是广度优先搜索,都需要遍历所有的顶点和边,所以时间复杂度都是$O(n+e)$。

判断题

1.队列是一种后进先出的数据结构。()

答案:错误

解析:队列是一种先进先出的数据结构,而栈是后进先出的数据结构。

2.满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。()

答案:正确

解析:满二叉树是指每一层上的所有结点都有两个子结点的二叉树,完全二叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。所以满二叉树一定是完全二叉树,而完全二叉树不一定是满二叉树。

3.折半查找只能在有序的顺序表中进行。()

答案:正确

解析:折半查找的基本思想是将有序表中间位置的元素与查找关键字比较,如果相等则查找成功;如果关键字小于中间元素,则在左半部分继续查找;如果关键字大于中间元素,则在右半部分继续查找。所以折半查找要求表必须是有序的,并且采用顺序存储结构。

解答题

1.已知一棵二叉树的先序遍历序列为ABDECFG,中序遍历序列为DBEACGF,试画出这棵二叉树。

答案:

先序遍历的顺序是根节点左子树右子树,中序遍历的顺序是左子树根节点右子树。

由先序遍历序列ABDECFG可知,根节点是A。

在中序遍历序列DBEACGF中找到A,A左边的DBE是左子树的中序遍历序列,A右边的CGF是右子树的中序遍历序列。

在先序遍历序列中,A之后的B是左子树的根节点。在左子树的中序遍历序列DBE中,B左边的D是B的左子树,B右边的E是B的右子树。

对于右子树,先序遍历中A之后左子树部分结束后是C,所以C是右子树的根节点。在右子树的中序遍历序列CGF中,C左边没有元素,说明C没有左子树,C右边的GF是C的右子树。

先序遍历中C之后是F,所以F是C右子树的根节点。在中序遍历序列GF中,G在F左边,所以G是F的左子树。

最终得到的二叉树结构为:

```

A

/\

BC

/\\

DEF

/

G

```

2.对数组[5,3,8,4,2]进行冒泡排序,写出每一趟排序后的结果。

答案:

冒泡排序的基本思想是比较相邻的元素,如果顺序错误就把它们交换过来。

第一趟:

比较

文档评论(0)

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

乐乐

1亿VIP精品文档

相关文档