2012年数据结构本科试题和答案.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  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文档。上传文档
查看更多
2012年数据结构本科试题和答案

 PAGE 4 武汉大学计算机学院 2012年-2013学年第一学期“数据结构”考试试题(A) 姓名 学号(序号)_ 班号 要求:所有的题目的解答均写在答题纸上,需写清楚题目的序号。每张答题纸都要写上姓名和序号。 一、单项选择题(每小题2分,共30分) 1. 数据结构在计算机内存中的表示是指 。 A. 数据的存储结构 B. 数据结构 C. 数据的逻辑结构 D. 数据元素之间的关系 2. 若线性表最常用的运算是存取第i个元素及其前趋元素的值,则采用 存储方式节省时间。 A.单链表 B.双链表 C.单循环链表 D.顺序表 3. 在一个具有n个结点的有序单链表中插入一个新结点使得仍然有序,其算法的时间复杂度为 。 A.O(log2n) B.O(1) C.O(n2) D.O(n) 4. 栈和队列的共同点是 。 A.都是先进后出 B.都是先进先出 C.只允许在端点处插入和删除元素 D.没有其同点 5. 判定一个循环队列Q(存放元素位置为0~QueueSize-1,front指向队中队首元素的前一个位置,rear指向队中队尾元素的位置)队空的条件是 。 A.Q.front==Q.rear B.Q.front+1==Q.rear C.Q.front==(Q.rear+1)%QueueSize D.Q.rear==(Q.front+1)%QueueSize 6. 串是 。 A.不少于一个字母的序列 B.任意个字母的序列 C.不少于一个字符的序列 D.有限个字符的序列 7. 一个n×n的对称矩阵A,如果采用以列优先(即以列序为主序)的压缩方式存放到一个一维数组B中,则B的容量为 。 A. n2 B. C. D. 8. 若一棵3次树中有a个度为1的节点,b个度为2的节点,c个度为3的节点,则该树中有 个叶子节点。 A.1+2b+3c B.a+2b+3c C.2b+3c D.1+b+2c 9. 一棵完全二叉树中有501个叶子节点,则至少有 个节点。 A.501 B.502 C.1001 D.1002 10. 在含有n个结点的线索二叉树中,线索的数目为 。 A.n-1 B.n C.n+1 D.2n 11. 下面关于B-树和B+树的叙述中,不正确的结论是 。 A.B-树和B+树都能有效地支持顺序查找 B.B-树和B+树都能有效地支持随机查找 C.B-树和B+树都是平衡的多分树 D.B-树和B+树都可用于文件索引结构 12. 有一个长度为12的有序表R[0..11],按折半查找法对该表进行查找,在表内各元素等概率情况下查找成功所需的平均比较次数为 。 A.35/12 B.37/12 C.39/12 D.43/12 13. 数据序列{8,9,10,4,5,6,20,1,2}只能是 的两趟排序后的结果。 A.简单选择排序 B. 冒泡排序 C.直接插入排序 D.堆排序 14. 有一些内排序算法,在最后一趟排序结束前可能所有的数据都没有放在其最终的位置上,这些排序算法是 。 Ⅰ.希尔排序 Ⅱ.快速排序 Ⅲ.归并排序 Ⅳ.堆排序 A.仅Ⅰ、Ⅱ B.仅Ⅱ、Ⅲ C.仅Ⅰ、Ⅲ D.仅Ⅰ、Ⅱ、Ⅳ 15. 在以下排序方法中,关键字比较的次数与元素的初始排列次序无关的是 。 A.快速排序 B.冒泡排序 C.插入排序 D.简单选择排序 二、问答题(共3小题,共30分) 1.设n为3的倍数,分析以下算法的时间复杂度(需给出推导过程)。(8分) void fun(int n) { int i,j,x,y; for (i=1;i=n;i++) if (3*i=n) for (j=3*i;j=n;j++) { x++; y=3*x+2; } } 2. 按关键字13、24、37、90、53的次序构造一棵平衡二叉树,回答以下问题: (1)该平衡二叉树的高度是多少? (10分) (2)其根节点的关键字是什么? (3)其中经过了哪些调整(指出调整名称和次数)。 3. 指出以下关于堆及堆排序叙述的正确性。(12分) (1)任何一棵完全二叉树一定是一个堆。 (2)在大根堆中,最大的元素在根节点中,最小的元素一定在某个叶子节点中。 (3)在大根堆中,堆中任一节点的关键字均大于它的左、右孩子的关键字。 (4)在一个小根

文档评论(0)

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

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

1亿VIP精品文档

相关文档