- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 1 题.( 复合题 共计 20 分) 简答题
第 1.1 题.(主观 题 5 分) 已知用二元组表示的数据结构如下,请画图表示其数据关系,并说明该数据结构属于哪种逻辑结构?(本小题4分)B=(K,R);K={A,B,C,D,E};R={A,B,B,C,B,D,D,A,D,B,D,E,E,C};
参考答案
逻辑结构:图图示结构:略(课本p158图5.2a)
第 1.2 题.(主观 题 5 分)
设一个有序顺序表中存放以下整数:16,87,154,170,275,426,503,509,512,612,653,677,703,765,897,908。运用二分(折半)法检索元素,请问:
(1)检索612,需要经过多少次比较?每次比较的元素是什么?
(2)检索900,需要经过多少次比较才能确定其不存在?每次比较的元素是什么?
参考答案
检索元素612第一次:m=(0+16)/2=8,与512比较;第二次:m=(9+16)/2=12,与703比较;第三次:m=(9+12)/2=10,与653比较;第四次:m=(9+10)/2=9,与612比较;检索成功。检索元素900第一次:m=(0+16)/2=8,与512比较;第二次:m=(9+16)/2=12,与703比较;第三次:m=(13+16)/2=14,与897比较;第四次:m=(15+16)/2=15,与908比较;此时,low=15,high=15,因为 900908,high=mid-1为14,使得lowhigh,检索停止,900不存在。
第 1.3 题.(主观 题 5 分) 设有编号为1,2,3,4的4辆列车,依次顺序开进一个栈式结构的站台,问是否有3,2,4,1和4,1,3,2两种开出车站的可能?如有,该如何操作?
参考答案
顺序3,2,4,1是可能的,操作方法:1、2、3号车依次开进车站,3、2号车依次出站,4号车进站然后出站,最后1号车出站。顺序4,1,3,2是不可能的。
第 1.4 题.(主观 题 5 分)
假设一棵二叉树的中序遍历为DCBGEAHFIJK,后序遍历为DCEGBFHKJIA,请问:
(1)该二叉树每层各有多少个结点?
(2)该二叉树的形态是怎样的?请画图表示。
参考答案
(1)每一层:1个结点;第二层:2个结点;第三层:4个结点;第四层:4个结点。
二叉树:图略(课本P155习题)
第 2 题.( 复合题 共计 25 分) 算法分析题
第 2.1 题.(主观 题 5 分)
顺序表定义如课本。顺序表初始设置的参数size为10,存储的数据为{12,3,8,41,63,25,16,36,23}。第1次调用下列函数的实参是(100,1),第2次调用的实参是(10,11)。请问:
(1)第1次调用后,存储的数据是什么?参数size是多少?
(2)第2次调用后,存储的数据是什么?参数size是多少?
templateclass ElemTypebool SqListElemType::Insert(const ElemType e, int i){ if (i 1 || i len + 1) return false; if (len = size){ ElemType *newbase; newbase = new ElemType[size + 10]; if (!newbase) return false; for (int j = 0; j len; j++) newbase[j] = elem[j]; delete[] elem; elem = newbase; size += 10; } ElemType *p,*q; q = elem[i - 1]; for(p = elem[len - 1]; p = q; --p) *(p + 1) = *p; *q = e; ++len; return true;}
参考答案
(1){100,12,3,8,41,63,25,16,36,23}。size是10。
(2){100,12,3,8,41,63,25,16,36,23,10}。size是20。
第 2.2 题.(主观 题 5 分)
带头结点的单链表定义如课本。下列算法对序列{12,6,1,25,41,36,21,15,19,7}连续进行操作,请问:
(1)第1次调用时实参表是(e,4),则操作完成后的序列是
文档评论(0)