02142数据结构导论201604
自考02142数据结构导论考前密押120题及答案含解析

目录第一章概论 (1)第二章线性表 (7)第三章栈、队列和数组 (13)第四章树和二叉树 (17)第五章图 (22)第六章查找 (28)第七章排序 (33)第一章概论一、单选题1.数据的最小标识单位是()A.数据项B.数据类型C.数据元素D.数据变量2.任意两个结点之间都没有邻接关系,组织形式松散,这种组织形式称为()A.集合B.线性结构C.树形结构D.图结构3.与数据元素本身的形式、内容、相对位置、个数无关的是数据的()A.存储结构B.逻辑结构C.类型D.运算实现4.具有分支、层次特性,上层的结点可以和下层多个结点相邻接,但下层结点只能和上层的一个结点相邻接,这种组织形式称为()A.集合B.线性结构C.树形结构D.图结构5.数据的逻辑结构分为四种,其中结构最复杂的是()A.集合B.线性结构C.树形结构D.图结构6.“能正确地实现预定的功能,满足具体问题的需要”。
这种评价算法好坏的因素称为()A.正确性B.易读性C.健壮性D.时空性7.计算n!(整数n≥0)的递归算法是:int Factorial(int n){if(n==0)return1;else return n*Factorial(n-1);}其时间复杂度为()n)A.O(n)B.O(log2C.O(n c)D.O(n²)8.下面程序段的时间复杂度为()for(int i=0;i<n;i++)for(int j=0;j<n;j++)A[i][j]=i×j;A.O(1)B.O(n)n) D.O(n²)C.O(log29.将长度为n的单链表链接在长度为m的单链表之后的算法时间复杂度为()A.O(n)B.O(m)C.O(n+m)D.O(n×m)二、填空题10.数据结构是指一组相互之间存在一种或多种特定关系的数据的组织方式和它们在计算机内的________方式,以及定义在该组数据上的一组操作。
11.1976年瑞士计算机科学家Niklaus Wirth曾提出一个著名公式:程序=数据结构+________。
全国自学考试数据结构导论试题及答案(4套)

全国2011年1月自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在顺序表中查找第i个元素,时间效率最高的算法的时间复杂度为( )A.O(1)B.O(n)C.O(log2n)D.O(n)2.树形结构中,度为0的结点称为( )A.树根B.叶子C.路径D.二叉树3.已知有向图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的拓扑序列是( ) A.V1,V3,V4,V6,V2,V5,V7 B.V1,V3,V2,V6,V4,V5,V7C.V1,V3,V4,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V74.有关图中路径的定义,表述正确的是( )A.路径是顶点和相邻顶点偶对构成的边所形成的序列B.路径是不同顶点所形成的序列C.路径是不同边所形成的序列D.路径是不同顶点和不同边所形成的集合5.串的长度是指( )A.串中所含不同字母的个数B.串中所含字符的个数C.串中所含不同字符的个数D.串中所含非空格字符的个数6.组成数据的基本单位是( )A.数据项B.数据类型C.数据元素D.数据变量7.程序段i=n;x=0;do{x=x+5*i;i--;}while (i>0);的时间复杂度为( )A.O(1)B.O(n)C.O(n2)D.O(n3)8.与串的逻辑结构不同的...数据结构是( )A.线性表B.栈C.队列D.树9.二叉树的第i(i≥1)层上所拥有的结点个数最多为( )A.2iB.2iC.2i-1D.2i-110.设单链表中指针p指向结点A,若要删除A的直接后继,则所需修改指针的操作为( ) A.p->next=p->next->next B.p=p->nextC.p=p->next->nextD.p->next=p11.下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是( )A.堆排序B.冒泡排序C.直接插入排序D.快速排序12.设字符串S1=″ABCDEFG″,S2=″PQRST″,则运算S=CONCAT(SUBSTR(S1,2,LENGTH(S2)),SUBSTR(S1,LENGTH(S2),2))后S的结果为( )A.″BCQR″B.″BCDEF″C.″BCDEFG″D.″BCDEFEF″13.在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡结点为A,并且A的左孩子的平衡因子为-1,右孩子的平衡因子为0,则使其平衡的调整方法为( )A.LL型B.LR型C.RL型D.RR型14.如果结点A有3个兄弟结点,而且B为A的双亲,则B的度为( )A.1B.3C.4D.515.数据表A中每个元素距其最终位置较近,则最省时间的排序算法是( )A.堆排序B.插入排序C.直接选择排序D.快速排序二、填空题(本大题共13小题,每小题2分,共26分)请在每小题的空格中填上正确答案。
全国自学考试数据结构导论试题与答案解析[4套]
![全国自学考试数据结构导论试题与答案解析[4套]](https://img.taocdn.com/s3/m/f1daa8dd680203d8ce2f2494.png)
全国2011年1月自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在顺序表中查找第i个元素,时间效率最高的算法的时间复杂度为( )A.O(1)B.O(n)C.O(log2n)D.O(n)2.树形结构中,度为0的结点称为( )A.树根B.叶子C.路径D.二叉树3.已知有向图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的拓扑序列是( ) A.V1,V3,V4,V6,V2,V5,V7 B.V1,V3,V2,V6,V4,V5,V7C.V1,V3,V4,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V74.有关图中路径的定义,表述正确的是( )A.路径是顶点和相邻顶点偶对构成的边所形成的序列B.路径是不同顶点所形成的序列C.路径是不同边所形成的序列D.路径是不同顶点和不同边所形成的集合5.串的长度是指( )A.串中所含不同字母的个数B.串中所含字符的个数C.串中所含不同字符的个数D.串中所含非空格字符的个数6.组成数据的基本单位是( )A.数据项B.数据类型C.数据元素D.数据变量7.程序段i=n;x=0;do{x=x+5*i;i--;}while (i>0);的时间复杂度为( )A.O(1)B.O(n)C.O(n2)D.O(n3)8.与串的逻辑结构不同的...数据结构是( )A.线性表B.栈C.队列D.树9.二叉树的第i(i≥1)层上所拥有的结点个数最多为( )A.2iB.2iC.2i-1D.2i-110.设单链表中指针p指向结点A,若要删除A的直接后继,则所需修改指针的操作为( ) A.p->next=p->next->next B.p=p->nextC.p=p->next->nextD.p->next=p11.下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是( )A.堆排序B.冒泡排序C.直接插入排序D.快速排序12.设字符串S1=″ABCDEFG″,S2=″PQRST″,则运算S=CONCAT(SUBSTR(S1,2,LENGTH(S2)),SUBSTR(S1,LENGTH(S2),2))后S的结果为( )A.″BCQR″B.″BCDEF″C.″BCDEFG″D.″BCDEFEF″13.在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡结点为A,并且A的左孩子的平衡因子为-1,右孩子的平衡因子为0,则使其平衡的调整方法为( )A.LL型B.LR型C.RL型D.RR型14.如果结点A有3个兄弟结点,而且B为A的双亲,则B的度为( )A.1B.3C.4D.515.数据表A中每个元素距其最终位置较近,则最省时间的排序算法是( )A.堆排序B.插入排序C.直接选择排序D.快速排序二、填空题(本大题共13小题,每小题2分,共26分)请在每小题的空格中填上正确答案。
自考02142《数据结构导论》串讲笔记

第一张概论1.1 引言两项基本任务:数据表示,数据处理软件系统生存期:软件计划,需求分析,软件设计,软件编码,软件测试,软件维护由一种逻辑结构和一组基本运算构成的整体是实际问题的一种数学模型,这种数学模型的建立,选择和实现是数据结构的核心问题。
机外表示------逻辑结构------存储结构处理要求-----基本运算和运算-------算法1.2.1 数据,逻辑结构和运算数据:凡是能够被计算机存储,加工的对象通称为数据数据元素:是数据的基本单位,在程序中作为一个整体加以考虑和处理。
又称元素、顶点、结点、记录。
数据项:数据项组成数据元素,但通常不具有完整确定的实际意义,或不被当作一个整体对待。
又称字段或域,是数据不可分割的最小标示单位。
1.2.2 数据的逻辑结构逻辑关系:是指数据元素之间的关联方式,又称“邻接关系”逻辑结构:数据元素之间逻辑关系的整体称为逻辑结构。
即数据的组织形式。
四种基本逻辑结构:1 集合:任何两个结点间没有逻辑关系,组织形式松散2 线性结构:结点按逻辑关系依次排列成一条“锁链”3 树形结构:具有分支,层次特性,形态像自然界中的树4. 图状结构:各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接。
注意点:1.逻辑结构与数据元素本身的形式,内容无关。
2.逻辑结构与数据元素的相对位置无关3.逻辑结构与所含结点个数无关。
运算:运算是指在任何逻辑结构上施加的操作,即对逻辑结构的加工。
加工型运算:改变了原逻辑结构的“值”,如结点个数,结点内容等。
引用型运算:不改变原逻辑结构个数和值,只从中提取某些信息作为运算的结果。
引用:查找,读取加工:插入,删除,更新同一逻辑结构S上的两个运算A和B, A的实现需要或可以利用B,而B的实现不需要利用A,则称A可以归约为B。
假如X是S上的一些运算的集合,Y是X的一个子集,使得X中每一运算都可以规约为Y中的一个或多个运算,而Y中任何运算不可规约为别的运算,则称Y中运算(相对于X)为基本运算。
02142数据结构导论份真题及答案.doc

2012年10月高等教育自学考试全国统一命题考试数据结构导论试题课程代码:02142请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分注意事项:1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。
如需改动,用橡皮擦干净后,再选涂其他答案标号。
不能答在试题卷上。
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的。
错选、多选或未选均无分。
1.下面几种算法时间复杂度阶数中,值最大的是A.O(nlog2n)B.O(n2)C.O(n)D.O(2n)2.即使输入非法数据,算法也能适当地做出反应或进行处理,不会产生预料不到的运行结果,这种算法好坏的评价因素称为A.正确性B.易读性C.健壮性D.时空性3.设顺序表的长度为100,则在第40个元素之后插入一个元素所需移动元素的个数为A.40B.60C.61D.1004.设带头结点的单循环链表的头指针为head,则判断该链表是否为空的条件是A. head->next==headB. head->next==NULLC. head!=NULLD. head==NULL5.在链栈的运算中,不需要...判断栈是否为空的是A.出栈B.进栈C.取栈顶元素D.求链栈的元素个数6.一个队列的输入序列是A,B,C,D,则该队列的输出序列是A.A,B,C,DB.B,C,D,AC.D,C,B,AD.C,D,B,A7.以行序为主序的二维数组a[3][5]中,第一个元素a[0][0]的存储地址是100,每个元素占2个存储单元,则a[1][2]的存储地址是A.100B.108C.114D.1168.对任何一棵二叉树T,若叶结点数为5个,则度为2的结点个数为A.4B.5C.6D.无法确定9.m个叶结点的哈夫曼树中,其结点总数为A.mB.2m+1C.2mD.2m-110.二叉树的中序遍历序列中,结点P排在结点Q之前的条件是A.在二叉树中P在Q的左边B.在二叉树中P在Q的右边C.在二叉树中P是Q的祖先D.在二叉树中P是Q的子孙11.有10个顶点的无向完全图的边数是A.11B.45C.55D.9012.在带权有向图中求两个结点之间的最短路径可以采用的算法是A.迪杰斯特拉(Dijkstra)算法B.克鲁斯卡尔(Kruskal)算法C.普里姆(Prim)算法D.深度优先搜索(DFS)算法13.二分查找(Binary Search)算法的时间复杂度是A.O(n2)B.O(nlog2n)C.O(n)D.O(log2n)14.在一棵初始时为空的二叉树中,依次插入键值序列50,72,43,85,75,20,38,45,65,60,构造对应的二叉排序树以后,查找元素60要进行的比较次数是A.2B.3C.4D.515.快速排序属于A.插入排序B.交换排序C.选择排序D.归并排序非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
自考数据结构导论02142第4章.ppt

●度—— 树的度:树中结点的度最大值。
●叶子(终端结点)——度为零的结点。 ●非终端结点——度不为零的结点。 ●孩子(子结点)——结点的子树的根称为该结点的孩子。 ●双亲(父结点)——一个结点称为该结点所有子树根的双亲。
●祖先——结点祖先指根到此结点的一条路径上的所有结点。
➢ 求左孩子Lchild(BT,X)和求右孩子Rchild(BT,X):分别求 出二叉树BT上结点X的左、右孩子;若X为BT的叶子或X 补在BT上,运算结果为NULL。
➢ 建二叉树Create(BT):建立一棵二叉树BT。
➢ 先序遍历PreOrder(BT):按先序对二叉树BT进行遍历,每 个结点被访问一次且仅被访问一次,若BT为空,则运算 为空操作。
➢ 遍历Traverse Tree(T):遍历树,即访问树中每 个结点,且每个结点仅被访问一次。
6
4.2 二叉树
第四章
二叉树在树结构的应用中起着非常重要的作用,因为二叉树有许多 良好的性质和简单的物理表示,而任何树都可以与二叉树相互转换,这 样就解决了树的存储结构及其运算中存在的复杂性。
4.2.1 二叉树的基本概念
不能互换,称为有序树。 ●无序树——若树中各结点的子树是无次序的,
可以互换,则成为无序树。
●森林——是m(≥0)棵树的集合。
5
四、树的基本操作
第四章
➢ 求根Root(T):求树T的根结点;
➢ 求双亲Parent(T,X):求结点X在树T上的双亲; 若X是树T的根或X不在T上,则结果为一特殊 标志;
➢ 求孩子Child(T,X,i):求树T上结点X的第i个孩子 结点;若X不在T上或X没有第i个孩子,则结 果为一特殊标志;
全国2013年1月高等教育自学考试 数据结构导论试题 课程代码02142

绝密★考试结束前全国2013年1月高等教育自学考试数据结构导论试题课程代码:02142请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分注意事项:1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。
如需改动,用橡皮擦干净后,再选涂其他答案标号。
不能答在试题卷上。
一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.数据的基本单位是A.数据元素B.数据项C.字段D.域2.算法的空间复杂度是指A.算法中输入数据所占用的存储空间的大小B.算法本身所占用的存储空间的大小C.算法中所占用的所有存储空间的大小D.算法中需要的辅助变量所占用存储空间的大小3.从一个长度为100的顺序表中删除第30个元素,需向前移动的元素个数为A.29B.30C.70D.71浙02142# 数据结构导论试题第1页(共5页)浙02142# 数据结构导论试题 第2页(共5页)4.若线性表最常用的操作是存取第i 个元素及其后继的值,则最节省操作时间的存储结构是A.单链表B.双链表C.单循环链表D.顺序表5.判断链栈LS 是否为空的条件是A.LS->next= =LSB.LS->next= =NULLC.LS! =NULLD.LS= =NULL 6.关于链队列的运算说法正确的是A.入队列需要判断队列是否满B.出队列需要判断队列是否空C.入队列需要判断队列是否空D.出队列需要判断队列是否满 7.元素的进栈次序为A,B,C,D,E,则出栈中不可能...的序列是 A.A,B,C,D,EB.B,C,D,E,AC.E,A,B,C,DD.E,D,C,B,A8.具有63个结点的完全二叉树是A.满二叉树B.二叉排序树C.哈夫曼树D.空树 9.将含有80个结点的完全二叉树从根这一层开始,每层从左到右依次对结点编号,根结点的编号为1。
02142数据结构导论2016年04月份真题及答案

2016年4月高等教育自学考试全国统一命题考试数据结构导论试卷(课程代码 02142)本试卷共6页。
满分l00分,考试时间l50分钟。
考生答题注意事项:1.本卷所有试题必须在答题卡上作答。
答在试卷上无效,试卷空白处和背面均可作草稿纸。
2.第一部分为选择题。
必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。
3.第二部分为非选择题。
必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。
4.合理安排答题空间,超出答题区域无效。
第一部分选择题(共30分)一、单项选择题(本大题共l5小题。
每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.一个公司的组织机构是1名公司经理领导若于名部门负责人、每个部门负责人领导若干名部门员工,则适合于描述该公司组织机构的逻辑结构是A.线性表 B.队列 C.树 D.图2.计算n!(整数n≥0)的递归算法是:int Factorial(int n){if(n= =o)return l;else returnn*Factorial(n--1);}其时闯复杂度为A.0(n) B.0(log2n) C.O(n0) D.O(n2)3.将一个由指针q指向的结点插在单链表中由指针P所指向的结点之后的操作是A.p=q; B.p--:>next=q;C.q一>next=p--:>next;p-->next=q; D.p一>next—q;q-->next—p--:>next;4. 设初始栈为空,s表示人栈操作,x表示出栈操作,则合法的操作序列是A.sxxssxxs B.ssxsxxxs C.ssxxxssx D.sssxxxsx5.将递归形式描述的算法改写为功能等价的非递归形式描述的算法,通常应设置的辅助结构是A.顺序表 B.单链表 C.栈 D.队列6.设长度为n的队列用单循环链表表示(假设表尾结点为当前队列的队尾元素),若只设头指针,则入队操作、出队操作的时间复杂度分别为A.O(n)、O(1) B.O(1)、O(1) C.O(1)、O(n) D.0(n)、0(n)7.若采用顺序存储(一维数组)结构存储一棵如题7图所示的二叉树,根结点1的下标为l,剥结点4的下标为A.4 B.5 C.6 D.78.按层序(自顶向下、从左到右)遍历二叉树时需借助队列作辅助结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016年4月高等教育自学考试全国统一命题考试数据结构导论试卷(课程代码 02142)本试卷共6页。
满分l00分,考试时间l50分钟。
考生答题注意事项:1.本卷所有试题必须在答题卡上作答。
答在试卷上无效,试卷空白处和背面均可作草稿纸。
2.第一部分为选择题。
必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。
3.第二部分为非选择题。
必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。
4.合理安排答题空间,超出答题区域无效。
第一部分选择题(共30分)一、单项选择题(本大题共l5小题。
每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.一个公司的组织机构是1名公司经理领导若于名部门负责人、每个部门负责人领导若干名部门员工,则适合于描述该公司组织机构的逻辑结构是A.线性表 B.队列 C.树 D.图2.计算n!(整数n≥0)的递归算法是:int Factorial(int n){if(n= =o)return l;else return n*Factorial(n--1);}其时闯复杂度为A.0(n) B.0(log2n) C.O(n0) D.O(n2)3.将一个由指针q指向的结点插在单链表中由指针P所指向的结点之后的操作是A.p=q; B.p--:>next=q;C.q一>next=p--:>next;p-->next=q; D.p一>next—q;q-->next—p--:>next;4. 设初始栈为空,s表示人栈操作,x表示出栈操作,则合法的操作序列是A.sxxssxxs B.ssxsxxxs C.ssxxxssx D.sssxxxsx 5.将递归形式描述的算法改写为功能等价的非递归形式描述的算法,通常应设置的辅助结构是A.顺序表 B.单链表C.栈 D.队列6.设长度为n的队列用单循环链表表示(假设表尾结点为当前队列的队尾元素),若只设头指针,则入队操作、出队操作的时间复杂度分别为A.O(n)、O(1) B.O(1)、O(1) C.O(1)、O(n) D.0(n)、0(n) 7.若采用顺序存储(一维数组)结构存储一棵如题7图所示的二叉树,根结点1的下标为l,剥结点4的下标为A.4 B.5 C.6 D.78.按层序(自顶向下、从左到右)遍历二叉树时需借助队列作辅助结构。
对高度为3的满二叉树进行层序遍历时,队列中所出现的元素个数最多是A.1 B.2 C.3 D. 49.一个数组的第一个元素的存储地址是i00,每个元素占2个存储单元,则第5个元素的存储地址是A.120 B.110 C.108 D. 10010.已知含6个顶点(v0,v1,v2,v3,v4,v5)的无向图的邻接矩阵如题10图所示,则从顶点V0出发进行深度优先搜索可能得到的顶点访问序列为A.{v0,v1,v2,v5,v4,v3} B.{v0,v1,v2,v3,v4,v5} C.{v0,v1,v5,v2,v3,v4} D. {v0,v1,v4,v5,v2,v3}11.“在旅游时从某地出发要去某个目的地,如何选择线路才能使得路程最短”,从图的应用角度.最合理的解决方案是A.深度优先搜索 B.最小生成树C.拓扑排序D.最短路径12.二分查找算法的时间复杂度是A.O(n2) B.O(n log2n) C. O(n) D.O(log2n)13.已知一个散列表如题l3图所示,其散列函数为H(key)=key mod11,采用线性探测法处理冲突,则下一个进入散列表的关键字49的地址为A. 2 B.3 C.8 D.914.用冒泡排序方法对n个待排序的键值进行排序,则整个排序过程所历经的趟数是A.1 B.n一1C.rl D.至少为l、至多为n—l15.现对关键字序列{6,1,4,3,7,2,8,5)进行快速排序,那么以第1个元素6为工作基准的第一趟快速排序结束的结果序列为A.{5,l,4,3,2,6,8,7) B.{5,1,4,3,2,6,7,8)C.{5,1,4,3,6,2,8,7) D.{8,7,6,5,4,3,2,1)第二部分非选择题(共70分)二、填空题(本大题共l3小题,每小题2分,共26分)16.计算机图灵奖获得者N.Wirth曾提出一个著名公式:算法+___数据结构_____=程序。
17.“即使输入非法数据,算法也能适当地做出反应或进行处理,不会产生预料不到的运行结果。
”这种评价算法好坏的因素称为____健壮性____。
18.设某非空双向链表,其结点结构为,若要删除指针q所指向的结点,则需执行如下两条关键语句:q一>priort>next=q-->next;__q->next->prior=q->prior;_。
19.大小为MaxSize的循环队列中,若front与rear分别表示队头元素和队尾元素的位置,则判断该循环队列为空的条件表达式是___rear==front_____。
20.对稀疏矩阵进行压缩存储的一种方法是__三元组表示法______。
21.若一棵二又树中只有叶结点和左右子树皆非空的结点,设二叉树叶结点个数为s,则左右子树皆非空的结点个数是___s-1_____。
22.若一棵二叉树的前序、中序、后序遍历的结果序列均相同,则该二叉树一定是__空二叉树______或是只有一个根结点的二叉树。
23.采用邻接表表示一有向图,若图中某顶点的入度和出度分别为D1和D2,则该顶点所对应的单链表的结点个数为___ D2_____。
24.对有序顺序表(07,12,15,18,27,32,46,65,83)用二分法查找,若查找成功,则查找所需比较次数最多的键值是___18,33_____。
25.由n个键值构造的二叉排序树,在等概率查找的假设下,查找成功的平均查找长度的最大值可能达到____(n+1)/2____。
26.对关键字序列{26,36,41,38,44,15,68,l2,06,51},设HashSize=13,H(key)=key mod HashSize,并用链地址法解决冲突,则构造得到的散列表中的指针HP[___12_____]所指向的一个单链表(同义词子表)最长。
27.在直接选择、直接插入、冒泡、快速等四种排序方法中,经一趟排序后,任一元素都不能确定其最终位最的排序方法是____直接插入排序____。
28.若采用直接选择排序方法对初始关键字序列{5,3,5,1}进行升序排序(其中包括2个值相同的关键字,均为5),则排序结束后的关键字序列是___{1,3,5,5}_____。
三、应用题(本大题共5小题.每小题6分。
共30分)29.如题29图所示,利用同一循环向量空间实现两个队列,其类型Queue2定义如下:typedef struct{DataType data[MaxSize];int:[ront[2],length[2];)Queue2;对于i=0或l,front[i]和length[i-]分别为第i个队列的队头位置和实际长度。
分别写出这两个队列满的条件。
答:队列0满的条件:(Q.front[0]+Q.length[0])%MaxSize==Q.front[1]队列1满的条件:(Q.front[1]+Q.length[1])%MaxSize==Q.front[0]30.将如题30图所示的含有3棵树的森林转换成相应的二又树,并分别给出该森林先序、中序遍历的结果序列和相应的二叉树的先序、中序遍历结果序列,根据所得到的遍历结果序列你会得到什么结论?答:转换后得到的二叉树为:森林的先序、中序遍历的结果序列分别为:1234567、2145637相应的二叉树的先序、中序遍历的结果序列分别为:1234567、2145637结论:先序遍历森林等同于先序遍历该森林对应的二叉树;中序遍历森林等同于中序遍历该森林对应的二叉树。
31.对一个图G,按顺序输入顶点对<1,3>、<1,2>、<2,4>、<2,3>、<4,3>、<4,2>、<4,l>,根据建立图的邻接表的算法画出相应的邻接表,并写出在该邻接表上,从顶点2开始搜索得到的一个深度优先搜索序列和广度优先搜索序列。
答:从顶点2开始搜索的深度优先搜索序列:2341从顶点2开始搜索的广度优先搜索序列:234132.设顺序存储的线性表共有l00个元素,按分块查找(索引查找)的要求等分成5块。
若对索引表采用二分查找来确定块,并在确定的块中进行顺序查找,则在概率相等的情况下,分块查找成功时的平均查找长度是多少(要求利甩∑P i C i来计算并给出详细算式)?答:分别查找成功时的平均查找长度由对索引表和对块内查找两部分组成。
其中对索引表查找的ASL=(1*1+2*2+2*3)/5=2.2,对顺序表查找的ASL=(1+2+…20)/20=10.5。
所以,分块查找成功时的平均查找长度ASL=2.2+10.5=12.7。
33.若采用堆排序方法对关键字序列{265,301,751,129,937,863,742,694,076,438}进行升序排序,写出其每趟排序结束后的关键字序列。
答:初始态[265 301 751 129 937 863 742 694 076 438]建立初始堆: [937 694 863 265 438 751 742 129 075 301]第一次排序重建堆:[863 694 751 765 438 301 742 129 075] 937第二次排序重建堆:[751 694 742 265 438 301 075 129] 863 937第三次排序重建堆:[742 694 301 265 438 129 075] 751 863 937第四次排序重建堆:[694 438 301 265 075 129] 742 751 863 937第五次排序重建堆:[438 265 301 129 075] 694 742 751 863 937第六次排序重建堆:[301 265 075 129] 438 694 742 751 863 937第七次排序重建堆:[265 129 075] 301 438 694 742 751 863 937第八次排序重建堆:[129 075]265 301 438 694 742 751 863 937第九次排序重建堆:075 129 265 301 438 694 742 751 863 937四、算法设计题(本大题共2小题。
每小题7分,共l4分)34.假设以带头结点的单链表表示线性表,单链表的类型定义如下:typedef struct node{int data;struct node*next;)LinkedNode,*LinkedList,;编写算法,删除值无序的线性表中值最大的元素(设表中各元素的值互不相同)。