徐州工程学院09年数据结构试卷
2009年《数据结构》试卷A答案

西华大学课程考试参考答案(A卷)课程代码: 8401801 试卷总分: 100 分一、单项选择题参考答案及评分标准:(本大题共20个小题,每小题2分,共40分)评分标准:选对一题得2分,不选或选错得0分。
1-5:CBACC 6-10:CCBDB 11-15:ABCCD 16-20:CADDC二、算法理解题参考答案及评分标准:(本大题共3个小题,第1、2小题各7分,第3小题6分,共20分)评分标准:请根据各解答步骤酌情给分。
1. 解:构造过程各图(略),最后结果为:2. 解:设权w=(5,29,7,8,14,23,3,11),可构造一棵赫夫曼树如下图所示。
所得赫夫曼编码为:A: 0110B: 10C: 1110D: 1111E: 110F: 00G: 0111H: 0103. 解:(1)希尔排序第一趟(增量d=5)排序后 7、12、36、23、12、51、60、55、72、49第二趟(增量d=3)排序后 7、12、36、23、12、51、49、55、72、60第三趟(增量d=1)排序后 7、12、12、23、36、49、51、55、60、72(2)归并排序第一趟排序后 12、51、23、55、7、49、36、60、12、72第一趟排序后 12、23、51、55、7、36、49、60、12、72第三趟排序后 7、12、23、36、49、51、55、60、12、72第四趟排序后 7、12、12、23、36、49、51、55、60、72三、算法设计题参考答案及评分标准:(本大题共4个小题,每小题10分,共40分)评分标准:请根据编程情况酌情给分。
1. 参考答案示例:void DelInsert(LinkList &L){∥本算法将带头结点的非空单链表L中数据域值最小的那个结点移到链表的最前面。
p=L->next;∥p是链表的工作指针pre=L;∥pre指向链表中数据域最小值结点的前驱。
q=p;∥q指向数据域最小值结点,初始假定是首元结点while (p->next!=NULL){ if(p->next->data<q->data){ pre=p;q=p->next;} ∥找到新的最小值结点 p=p->next;}if (q!=L->next){ pre->next=q->next;∥将最小值结点从链表上摘下q->next= L->next;∥将q结点插到链表最前面L->next=q;}}//DelInsert2. 参考答案示例:void Count(BiTree T,int &n0,int &n){//统计二叉树T上叶结点数n0和非叶结点数n。
数据结构期末考试试题和标准答案及评分标准

《数据结构》试题(A卷)(考试时间:90分钟)一、单项选择题(本大题共15小题,每小题2分,共30分)(每题只有一个选项是正确的,将答案填写在括号内,错选、多选不得分)1.()是组成数据的基本单位,是一个数据整体中相对独立的单元。
A.数据 B.数据元素 C.数据对象 D.数据结构2.算法计算量的大小称为算法的()。
据的存3.4.5.6.7.8.A.线性表采用顺序存储,必须占用一片连续的存储单元。
B.线性表采用顺序存储,便于进行插入和删除操作。
C.线性表采用链式存储,不必占用一片连续的存储单元。
D.线性表采用链式存储,便于插入和删除操作。
9.队列操作的原则是()。
A.后进先出B.先进先出C.只能进行插入D.只能进行删除10.栈中允许进行插入和删除的一端称为()。
A.栈首B.栈尾C.栈顶D.栈底11.假设以数组A[n]存放循环队列的元素,其首尾指针分别为front和rear,则当前队列中的元素个数为()。
A.(rear-front+n)%nB.rear-front+1C.(front-rear+n)%nD.(rear-front)%n12.最大容量为n的循环队列,队尾指针是rear,队首指针是front,则队空的判断条件是()。
13.构。
14.15.12在q3.放了2个字符。
4.广义表(a,b,c,d)的表尾是。
5.一棵深度为k的二叉树,最多有个结点。
6.已知有向图G=(V,E),其中:V={v1,v2,v3,v4,v5,v6,v7},E={<v1,v2>,<v1,v3>,<v1,v4>,<v2,v5>,<v3,v5>,<v3,v6>,<v4,v6>,<v5,v7>,<v6,v7>},则G的拓扑序列是______。
7.有n个顶点的连通图至少有条边。
8.1.()23.4()5.6.7.8.9.()10.采用线性探测法解决冲突问题,所产生的一系列后继散列地址必须大于等于原散列址。
09级计本数据结构期中考试卷(含答案)

09级计本数据结构期中考试卷(含答案)计算机(本科)2009级《数据结构/》试卷第 1 页(共 4 页)⽟林师范学院期中课程考试试卷(2010——2011学年度第⼀学期)命题教师:刘恒命题教师所在系:数计系课程名称:数据结构考试专业:计算机考试年级:09级⼀、单项选择题(每题2分,共30分,把正确答案填⼊表格中) 1、下列哪项不是衡量算法优劣的标准( )。
A 、健壮性 B 、可⾏性 C 、可读性 D 、效率与低存储量2、设n 为正整数,则下列程序段中前置以记号@的语句频度为( )。
k=0;for(i=1;i<=n;i++) { for(j=i;j<=n;j++) @ k++; }A 、2nB 、n-1C 、n(n+1)/2D 、n3、关于线性表()n a a a ,...,,21的说法,下列哪个是不正确的( )。
A 、数据元素同构。
B 、数据元素个数n 为表长度。
C 、当n=0时,线性表为空表。
D 、数据项能出现缺项。
4、在顺序表中,只要知道( ),就可在相同时间内求出任⼀结点的存储地址。
A 、基地址和结点⼤⼩ B 、结点⼤⼩C 、基地址D 、向量⼤⼩ 5、在( )运算中,使⽤顺序表⽐链表好。
A 、插⼊ B 、删除C 、根据序号查找D 、根据元素值查找6、设N 为正整数,试确定下列程序段中前置以记号@语句的频度为( )。
x=91;y=100;while(y>0){@if(x>100){x-=10;y-=2;} else x++; } A 、1100 B 、 550 C 、110 D 、 55 7、“假上溢”现象会出现在( )中。
A 、循环队列B 、链队列C 、栈D 、顺序队列8、对单链表执⾏下列程序段,请选出不正确的⼀项( )。
T=Q;While(T->next!=NULL){T->data=T->data*3;T=T->next;} A 、R->data=27 B 、Q->data=12C 、H->data=2D 、P->data=39、⼀个栈的⼊栈序列是abcde ,则栈的不可能的输出序列是( )。
数据结构实验指导书及答案(徐州工程学院)

《数据结构实验》实验指导书及答案信电工程学院计算机科学和技术教研室编2011.12数据结构实验所有代码整理作者郑涛声明:在这里我整理了数据结构实验的所有代码,希望能对大家的数据结构实验的考试有所帮助,大家可以有选择地浏览,特别针对一些重点知识需要加强记忆(ps:重点知识最好让孙天凯给出),希望大家能够在数据结构实验的考试中取得令人满意的成绩,如果有做的不好的地方请大家谅解并欢迎予以指正。
实验一熟悉编程环境实验预备知识:1.熟悉本课程的语言编译环境(TC或VC),能够用C语言编写完整的程序,并能够发现和改正错误。
2.能够灵活的编写C程序,并能够熟练输入C程序。
一、实验目的1.熟悉C语言编译环境,掌握C程序的编写、编译、运行和调试过程。
2.能够熟练的将C程序存储到指定位置。
二、实验环境⒈硬件:每个学生需配备计算机一台。
⒉软件:Windows操作系统+Turbo C;三、实验要求1.将实验中每个功能用一个函数实现。
2.每个输入前要有输入提示(如:请输入2个整数当中用空格分割:),每个输出数据都要求有内容说明(如:280和100的和是:380。
)。
3.函数名称和变量名称等用英文或英文简写(每个单词第一个字母大写)形式说明。
四、实验内容1.在自己的U盘中建立“姓名+学号”文件夹,并在该文件夹中创建“实验1”文件夹(以后每次实验分别创建对应的文件夹),本次实验的所有程序和数据都要求存储到本文件夹中(以后实验都按照本次要求)。
2.编写一个输入某个学生10门课程成绩的函数(10门课程成绩放到结构体数组中,结构体包括:课程编号,课程名称,课程成绩)。
3.编写一个求10门成绩中最高成绩的函数,输出最高成绩和对应的课程名称,如果有多个最高成绩,则每个最高成绩均输出。
4.编写一个求10门成绩平均成绩的函数。
5.编写函数求出比平均成绩高的所有课程及成绩。
#include<stdio.h>#include<conio.h>struct subject{int subject_id;char subject_name[20];double subject_grades;};struct subject sub[10];void input(){int i;printf("please input:\n");for(i=0;i<10;i++){scanf("%d %s %lf",&sub[i].subject_id,&sub[i].subject_name,&sub[i].subject_g rades);}printf("you just input:\n");for(i=0;i<3;i++){printf("%d %s %lf\n",sub[i].subject_id,sub[i].subject_name,sub[i].subject_g rades);}}void subject_max(){int i,flag;double max=sub[0].subject_grades;for(i=0;i<10;i++){if(sub[i].subject_grades>max)max=sub[i].subject_grades;flag=i;}printf("The high score of subjectis %s %lf\n",sub[flag].subject_name,max);}void subject_average(){int i;double average,sum=sub[0].subject_grades;for(i=1;i<10;i++){sum+=sub[i].subject_grades;}average=sum/10;printf("subject's average is %lf\n",average);}void subjct_gtaverage(){int i,flag;double average,sum=sub[0].subject_grades;for(i=1;i<10;i++){sum+=sub[i].subject_grades;}average=sum/10;for(i=0;i<10;i++){if(sub[i].subject_grades>average){flag=i;printf("subject greater than average is %s %lf\n",sub[flag].subject_name,sub[flag].subject_grades);}}}int main(){input();subject_max();subject_average();subjct_gtaverage();return 0;}实验二顺序表的基本操作实验预备知识:1.熟练运用数组进行程序设计,掌握数组名和指针作为函数参数。
徐州工程学院数据库原理及运用2011-2012 数据库期末(A卷)

徐州工程学院试卷2011 — 2012 学年第 一 学期 课程名称 数据库原理及应用 试卷类型 A 卷 考试形式 闭卷 考试时间 100 分钟命 题 人 刘风华 2011 年 12 月 8日 使用班级 09信计本1、2、3 教研室主任 年 月 日 教学院长 年 月 日 姓 名 班 级 学 号1、 ( )是存储在计算机内有结构的数据的集合。
A 、数据库系统B 、数据库C 、数据库管理系统D 、数据结构 2、在E-R 图中,用来表示实体的图形是( ) A 、矩形 B 、椭圆形 C 、菱形 D 、三角形3、按条件f 对关系R 进行选取,其关系代数表达式为( ) A 、R ∞R B 、R R f∞ C 、)(R fσD 、)(R f∏4、设有关系R 和S ,关系代数表达式R-(R-S)表示的是( )A 、R ∩SB 、R ∪SC 、 R -SD 、 R ×S 5、以下关于视图的描述中,不正确的是( )A 、视图是外模式B 、使用视图可以加快查询语句的执行速度C 、视图是虚表D 、使用视图可以加快查询语句的编写 6、 关系数据库设计理论中,起核心作用的是( )A 、 范式B 、 模式设计C 、 数据依赖D 、 数据完整 7、 一个关系模式R{x1,x2,x3,x4},假定该关系存在着如下函数依赖:{x1→x3,x3→x1,x2→x1x3} ,则该关系属于( )。
A 、2NFB 、3NFC 、4NFD 、 BCNF8、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的( )。
A 、安全性B 、完整性C 、并发控制D 、恢复 9、“日志”文件用于保存( D )。
A 、程序运行过程B 、数据操作C 、程序执行结果D 、对数据库的更新操作 10、在数据库技术中,“脏数据”是指( )。
A 、未回退的数据B 、未提交的数据C 、回退的数据D 、未提交随后又被撤销的数据 11、一个事务在执行时,应该遵守“要么不做,要么全做”的原则,这是事务的( )。
数据结构试卷试题及答案

数据结构试卷试题及答案一、选择题(每题5分,共40分)1. 数据结构是研究数据元素的()A. 存储结构B. 处理方法C. 逻辑结构D. 所有以上内容答案:D2. 在数据结构中,通常采用()方式来表示数据元素之间的逻辑关系。
A. 顺序存储结构B. 链式存储结构C. 索引存储结构D. 散列存储结构答案:B3. 下面哪一个不是栈的基本操作?()A. 入栈B. 出栈C. 判断栈空D. 获取栈顶元素答案:D4. 下面哪一个不是队列的基本操作?()A. 入队B. 出队C. 判断队列空D. 获取队头元素答案:D5. 下面哪一个不是线性表的特点?()A. 有且只有一个根节点B. 每个节点最多有一个前驱和一个后继C. 数据元素类型相同D. 数据元素类型可以不同答案:D6. 在下列哪种情况中,使用链式存储结构比顺序存储结构更合适?()A. 数据元素经常插入和删除B. 数据元素大小不固定C. 数据元素个数不确定D. 所有以上情况答案:D7. 下面哪一个不是树的遍历方式?()A. 前序遍历B. 中序遍历C. 后序遍历D. 翻转遍历答案:D8. 在下列哪种情况中,使用散列存储结构比其他存储结构更合适?()A. 数据元素个数较少B. 数据元素查找频繁C. 数据元素插入和删除频繁D. 数据元素大小不固定答案:B二、填空题(每题5分,共30分)9. 栈是一种特殊的线性表,它的插入和删除操作都限定在表的一端进行,这一端称为______。
答案:栈顶10. 队列是一种特殊的线性表,它的插入操作在表的一端进行,这一端称为______,而删除操作在另一端进行,这一端称为______。
答案:队尾、队头11. 二叉树中的节点包括______和______。
答案:根节点、子节点12. 在图的存储结构中,邻接矩阵表示法用______个一维数组来表示图中各个顶点之间的关系。
答案:两个13. 散列存储结构中,关键码到存储地址的映射方法称为______。
2009数据结构期末试卷1234B答案

2009数据结构期末试卷1234B答案徐州工程学院数据结构期末试卷B答案2008 — 2009 学年第二学期课程名称数据结构试卷类型期末考试形式闭卷考试时间 100 分钟命题人戴磊 2009 年 4 月 14 日使用班级 07计本1-2 07计单教研室主任年月日教学院长年月日姓名班级学号 .一、填空题(共8 小题,每空 1 分,共计20 分)1.数据的逻辑结构被分为集合、线性结构、树形结构和图状结构4种。
2.链表最后一个结点的指针指向链表的头节点,这样的链表称为_循环_链表;链表的每个结点都有两个指针域,一个指针指向前一结点,另一个指针指向后一结点,这样的链表称为_双向_链表。
3.某二叉树结点的中序遍历序列为A,B,C,D,E,F,G,后序遍历序列为B,D,C,A,F,G,E,则该二叉树结点的前序遍历序列为__ E; A;C;B;D; G; F ___,该二叉树对应的树林包括___ 2 _____棵树。
5.按照锦标赛排序的思想,决出8个选手的名次排列,共需要进行___11___场比赛(考虑最坏的情况)。
6.Hanoi塔、求一个数的阶乘、二叉树遍历等类似问题的解决一般通过使用_递归_来解决。
7.在进行直接插入排序时,其数据比较次数与数据的初始排列__有___关;而在进行直接选择排序时,其数据比较次数与数据的初始排列__无___关。
8.设r指向单链表的最后一个结点,要在最后一个结点之后插入s所指的结点,需执行的三条语句是__ R->next =s ______;r=s; r->next=null;。
9. 在有序表(12,24,36,48,60,72,84)中折半查找关键字72时所需进行的关键字比较次数为__2___。
10.在线形表的散列存储中,处理冲突有开放定址法和链地址法两种方法。
11.在一棵二叉树中,第五层的结点数最多为 16 个。
12.用冒泡法对n 个关键码排序,在最好情况下,只需做_____n-1________次比较和_______0_____ 次移动;在最坏的情况下要做______ n(n-1)/2 ___________次比较。
徐州工程学院数据库(姜代红)答案.docx

>单项选择题 1.C 2.B 3.D4.D5.C6.A7.D8.D 9.A 10.B 11.C 12.D 13.D14.B 15.A 16.A 17.B 18.A二、 填空题1.需求分析概念结构设计逻辑结构设计物理结构设 计数据库实施运行与维护2. 属性冲突命名冲突结构冲突3. 数据项4. 实体属性实体间的联系5. 数据流的起点或终点数据存储数据处理数据流三、 简答题1. 答:这里只概要列出数据库设计过程的六个阶段:(1)需 求分析;(2)概念结构设计;(3)逻辑结构设计;(4)数据库 物理设计;(5)数据库实施;(6)数据库运行和维护。
这是 一个完整的实际数据库及其应用系统的设计过程。
不仅包括 设计数据库本身,还包括数据库的实施、运行和维护。
设计一 个完善的数据库应用系统往往是上述六个阶段的不断反复。
2. 答:各阶段的设计要点如下:数据库设计(1)需求分析:准确了解与分析用户需求(包括数据与处理)。
(2)概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
(3)逻辑结构设计:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
(4)数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
(5)数据库实施:设计人员运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
(6)数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。
3.答:数据库结构设计的不同阶段形成数据库的各级模式,即:(1)在概念设计阶段形成独立于机器特点,独立于各个DBMS产品的概念模式,在本篇中就是E-R图;(2)在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图(View),形成数据的外模式;(3)在物理设计阶段,根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
徐州工程学院试卷
—学年第学期课程名称数据结构
试卷类型考试形式考试时间分钟
命题人年月日使用班级
教研室主任年月日教学院长年月日
姓名班级学号
一、填空题(共11 小题,每空 1 分,共计20 分)
1.数据的逻辑结构被分为、、和4种。
2.链表最后一个结点的指针指向链表的头节点,这样的链表称为_____链表;链表的每个结点都有两个指针域,一个指针指向前一结点,另一个指针指向后一结点,这样的链表称为_____链表。
3.某二叉树结点的中序遍历序列为A,B,C,D,E,F,G,后序遍历序列为B,D,C,
A,F,G,E,则该二叉树结点的前序遍历序列为____________________,该二叉树对应的树林包括________棵树。
4.按照锦标赛排序的思想,决出8个选手的名次排列,共需要进行______场比赛(考虑最坏的情况)。
5.Hanoi塔、求一个数的阶乘、二叉树遍历等类似问题的解决一般通过使用_____来解决。
6.在进行直接插入排序时,其数据比较次数与数据的初始排列_____关;而在进行直接选择排序时,其数据比较次数与数据的初始排列____关。
7.设r指向单链表的最后一个结点,要在最后一个结点之后插入s所指的结点,需执行的三条语句是_________ _;r=s; r->next=null;。
8. 在有序表(12,24,36,48,60,72,84)中折半查找关键字72时所需进行的关键字比较次数为_____。
9.在线形表的散列存储中,处理冲突有和两种方法。
10.在一棵二叉树中,第五层的结点数最多为个。
11.用冒泡法对n 个关键码排序,在最好情况下,只需做_____________次比较和___________
次移动;在最坏的情况下要做_________________次比较。
二、选择题(共15小题,每题1 分,共计15 分)
1.在数据结构的讨论中把数据结构从逻辑上分为()
A.内部结构与外部结构B.静态结构与动态结构
C.线性结构与非线性结构D.紧凑结构与非紧凑结构
2.算法分析的两个主要方面是()
A.空间复杂性和时间复杂性B.正确性和简明性
C.可读性和文档性D.数据复杂性和程序复杂性
3.一个非空广义表的表头()
A.不可能是子表B.只能是子表C.只能是原子 D.可以是子表或原子4.在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行( ) A.s->next=p;p->next=s B.s->next=p->next;p->next=s
C.s->next=p->next;p=s D.p->next=s;s->next=p
5.将一个递归算法改为对应的非递归算法时,通常需要使用()
A.栈B.队列C.循环队列D.优先队列
6.图的邻接矩阵表示法适用于表示()
A.无向图B.有向图C.稠密图D.稀疏图
7.深度为5的二叉树其结点数最多为()
A.16 B.30 C.31 D.32
8.设单循环链表中结点的结构为(data,next),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。
若想删除链表第一个结点,则应执行下列哪一个操作()
A.s=rear;rear=rear->next;delete s;B.rear=rear->next;delete rear;
C.rear=rear->next->next;delete rear;D.s=rear->next->next;rear->next->next=s->next;delete s;
9.线性表采用链式存储时,结点的存储地址()
A.必须是不连续的B.连续与否均可
C.必须是连续的D.和头结点的存储地址相连续
10.根据集合{25,30,16,48},按照依次插入结点的方法生成一棵二叉搜索树,在等概率情况下成功查找一个元素的平均查找长度为()
A.2 B.2.5 C.3 D.4
11. 含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为( )
A.e B.2e C.n2-e D.n2-2e
12. 对线性表进行折半搜索时,要求线性表必须()
A.以链接方式存储且结点按关键码有序排列B.以数组方式存储
C.以数组方式存储且结点按关键码有序排列D.以链接方式存储
13. 从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在
已排序序列的合适位置,该排序方法称为( )排序法。
A.二路归并B.选择C.shell D.插入
14. 若一个图的边集为{<1,2>,<1,4>,<2,5>,<3,1>,<3,5>,<4,3>},则从顶点1开始对该图进行深度优先搜索,得到的顶点序列可能为( )。
A.1,2,5,4,3 B.1,2,3,4,5
C.1,2,5,3,4 D.1,4,3,2,5
15. 在以下的叙述中,正确的是( )。
A.线性表的线性存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出
三、判断题(对的打√,错的打×共15 小题,每题 1 分,共计15 分)
1、单链表从任何一个结点出发,都能访问到所有结点。
( )
2、将一棵树转换成二叉树后,根结点没有左子树。
( )
3、哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。
( )
4、在树结构里,有且仅有一个结点没有前驱;非根结点有且仅有一个双亲,且存在一条从根到该
结点的路径()。
5、线性的数据结构可以顺序存储,也可以链接存储。
非线性的数据结构只能链接存储。
()
6、在AOE网中,关键路径是唯一的。
( )
7、向二叉排序树插入一个新结点时,新结点一定成为二叉排序树的一个叶子结点。
()
8、对有向图G,如果从任一顶点出发进行一次深度优先或广度优先搜索就能访问每个顶点,则该图一定是完全图。
()
9、在一个有向图的拓朴序列中,若顶点a在顶点b之前,则图中必有一条弧<a,b>。
()
10、在散列法中,一个可用散列函数必须保证绝对不产生冲突。
()
11、完全二叉树的某结点若无左孩子,则它必是叶子结点。
( )
12、所谓平衡二叉树是指左右子树的高度差的绝对值不大于1的二叉树。
()
13、AOE网所表示的工程至少所需的时间等于从源点到汇点的最短路径的长度。
( )
14、若一个栈的输入序列为123…n,其输出序列的第一个元素为n,则其输出序列的每个元素a i 一定满足a i =n-i+1。
(i=1,2,...,n)。
( )
15、在采用线性探测法处理冲突的散列表中,所有的同义词在表中相邻。
()
四、算法填空题:将折半查找的非递归算法中的空白处进行正确填写。
(每空2分,共计10分)
int Search_Bin(SSTable ST,KeyType key)
{ int low=_______;high=ST.length;(1)
While (low<=high) { (2)
mid=_________________;(3)
if (EQ(key,ST.elem[mid].key ) return __________;
else if (LT(key,ST. elem[mid].key)) __________________;(4)
else __________________;(5)
}
return 0;
}// Search_Bin
五、综合应用题((共 4 小题,每题10分,共计40 分))
1.下图为某无向图的邻接表,分别写出从A出发深度优先搜索和广度优先搜索的结果,并画出该无向图的逻辑结构图。
2.已知哈希表地址空间为0..14,哈希函数为H(k)=k mod 13,采用线性探测法处理冲突。
将下面各数依次存入该散列表中,并求出在等概率下的平均查找长度和失败的查找长度。
240, 29, 345, 189, 100, 20, 21, 35, 3, 208, 78, 99, 45, 350
3.在一个空A VL树内,依次插入关键字(46,15,20,35,28,58,18,50,54),分别画出46,15,20,35插入完和所有关键字都插入完的A VL树。
,并求出查找成功状态下的平均查找长度。
4.判断以下序列是否为大根堆?若否,则按照教材中的算法将它们调整为大根堆,要求:画出调整后的堆结构图和相对应的序列(不要求过程)
1.(38,56,25,23,40,100,29,61,35,76,28,20)
2.(21,66,39,73,86,48,52,90,75,88)
3.(12,70,33,65,24,56,48,92,86,33,21)。