福建师范《数据结构概论》作业考核试题
福建师范大学19年8月课程考试数据结构概论作业考核试题【辅导答案】

(1)假设队列q中的元素为(2,4,5,7,8),其中“2”为队头元素。写出执行函数调用algo(&q)后的队列q;
答:
(2)简述算法algo的功能。
答:
五、程序设计题(共10分)
1、已知r[]为一维数组,其中r[0]到r[n-1]为待排序的n个元素,排序好的元素仍放在r[0]到r[n-1]中,请写出对该数组进行非递归的直接插入排序算法,取名为insertsort(elemtype r[],int n)。 (10分)
A.插入操作更加方便 B.删除操作更加方便
C.不会出现下溢的情况 D.不会出现上溢的情况
6.二叉树中第5层上的结点个数最多为(C)
A.8 B.15
C.16 D.32
7.在表长为n的链表中进行线性查找,查找成功时,它的平均查找长度为(B)
A.ASL=n B.ASL=(n+1)/2
C.ASL= +1 D.ASL≈log2(n+1)-1
答:
3.待排序的序列为:25,47,36,21,90,84,62,78,15,32。写出用(小根)堆排序的每一趟的结果。
4.已知一棵树的前序序列为:abefcgdhijk,后序序列为:efbgcijkhda。画出这棵树。
5.已知闭散列表的长度为10(散列地址空间为0..9),散列函数为H(K)=K%8,采用线性重新散列技术解决冲突,将下列一组数据{25,17,39,47,83,55,99,34}依次插入到散列表中,请画出散列表。
四、算法阅读、设计(共5分)
1 阅读下列函数algo,并回答问题:(5分)
void algo(Queue *Q)
{
Stack S;
InitStack(&S);
奥鹏2020年6月福师《数据结构概论》在线作业一_2.doc

1.对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为()A.(N1)/2B.N/2C.ND.[(1N)*N ]/2【参考答案】: A2.字符串‘ababaabab’的nextval 为()A.(0,1,0,1,04,1,0,1)B.(0,1,0,1,0,2,1,0,1)C.(0,1,0,1,0,0,0,1,1 )D.(0,1,0,1,0,1,0,1,1 )【参考答案】: A3.输入序列为ABC,可以变为CBA时,经过的栈操作为()A.push,pop,push,pop,push,popB.push,push,push,pop,pop,popC.pus h,push,pop,pop,push,popD.push,pop,push,push,pop,pop【参考答案】: B4.()的遍历仍需要栈的支持.A.前序线索树B.中序线索树C.后序线索树D.不确定【参考答案】: C5.在"选项"对话框的"文件位置"选项卡中可以设置下面哪一项?A.表单的默认大小B.默认目录C.日期和时间的显示格式D.程序代码的颜色【参考答案】: B6.栈和队列的共同点是()。
A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素 D.没有共同点 E.限制存取点的线性结构 F.限制存取点的非线性结构【参考答案】: C7.一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()A.不确定B.n-i1C.iD.n-i【参考答案】: B8.定位第一条记录上的命令是?A.GO TOPB.GO BOTTOMC.GO 6D.SKIP【参考答案】: A9.设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()。
A.13B.33C.18D.40【参考答案】: B10.有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?()A.5 4 3 6 1 2B.4 5 3 1 2 6C.3 4 6 5 2 1D.2 3 4 1 5 6【参考答案】: C11.若用冒泡排序方法对序列{10,14,26,29,41,52}从大到小排序,需进行()次比较。
18秋福师《数据结构概论》在线作业一

(单选题) 1: 设给定权值总数有n 个,其哈夫曼树的结点总数为( )A: 不确定B: 2nC: 2n+1D: 2n-1正确答案:(单选题) 2: 下列排序算法中,()算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。
A: 堆排序B: 冒泡排序C: 快速排序D: 插入排序正确答案:(单选题) 3: 已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是()。
A: head(tail(tail(L)))B: tail(head(head(tail(L))))C: head(tail(head(tail(L))))D: head(tail(head(tail(tail(L)))))正确答案:(单选题) 4: 线性表(a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂性为()A: O(i)B: O(1)C: O(n)D: O(i-1)正确答案:(单选题) 5: 动态存储管理系统中,通常可有()种不同的分配策略。
A: 1B: 2C: 3D: 4正确答案:(单选题) 6: 下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是。
( )A: 选择排序法B: 插入排序法C: 快速排序法D: 堆积排序法正确答案:(单选题) 7: 串的长度是指()A: 串中所含不同字母的个数B: 串中所含字符的个数C: 串中所含不同字符的个数D: 串中所含非空格字符的个数正确答案:(单选题) 8: 栈在()中应用。
A: 递归调用B: 子程序调用C: 表达式求值D: A,B,C正确答案:(单选题) 9: 就平均性能而言,目前最好的内部排序方法是()排序法。
A: 冒泡B: 希尔插入C: 交换D: 快速正确答案:(单选题) 10: 下述文件中适合于磁带存储的是()。
A: 顺序文件B: 索引文件C: 散列文件D: 多关键字文件正确答案:(单选题) 11: 关系数据库中,实现实体之间的联系是通过表与表之间的?A: 公共索引B: 公共存储C: 公共元组D: 公共属性正确答案:(单选题) 12: 下列表达式中结果不是日期型的是?A: CTOD("2000/10/01")B: {^99/10/01}+365C: VAL("2000/10/01")D: DATE()正确答案:(单选题) 13: 一个算法应该是()。
福师2020秋《数据结构概论》在线作业一

福师2020秋《数据结构概论》在线作业一1.正确的单链表插入操作是在指针p的后面插入指针s的结点,应该选择选项B,即s->next=p->next。
p->next=s;2.一棵二叉树有10个度为2的结点和5个度为1的结点,度为2的结点有11个,选择选项B。
3.在完全二叉树中,叶结点只有左子结点或只有右子结点的情况不存在,因此选项C是正确的。
4.顺序存储的线性表访问结点的时间复杂度为O(1),增加、删除结点的时间复杂度为O(n),因此选项C是正确的。
5.从广义表L中取出原子项t,需要先找到第三个元素((u,t,w)),再找到第二个元素t,最后取出头部元素,因此选项D是正确的。
6.判断表达式中左右括号是否配对,采用栈的数据结构最佳,因此选项D是正确的。
7.若要对序列进行稳定的排序,应该选择归并排序,因为它的时间复杂度为O(nlogn),且稳定,不会改变相同元素的相对位置,因此选项B是正确的。
8.若要排序是稳定的,且关键字为实数,应该选择直接插入排序,因为它的时间复杂度为O(n^2),但是稳定,不会改变相同元素的相对位置,因此选项A是正确的。
9.数据库管理系统是数据库系统的核心,因为它负责管理和维护数据库,提供数据存储、检索、更新等功能,因此选项B是正确的。
10.在命令窗口执行SQL命令时,若命令要占用多行,续行符是连字符(-),因此选项D是正确的。
22.广义表((a,b,c,d))的表头是a,表尾是(b,c,d)。
23.树的后根遍历序列等同于该树对应的二叉树的中序序列。
24.XXX命令的功能是清除所有内存变量。
25.如果要求一个线性表既能较快的查找,又能适应动态变化的要求,则可采用分块查找法。
26.直接选择排序算法在最好情况下的时间复杂度为O (N^2)。
27.内部排序不要求数据一定要以顺序方式存储。
28.数据管理技术经历了人工管理—文件系统—数据库系统三个阶段。
29.折半查找法的查找速度不一定比顺序查找法快。
福建师范大学22春“计算机科学与技术”《数据结构概论》期末考试高频考点版(带答案)试卷号4

福建师范大学22春“计算机科学与技术”《数据结构概论》期末考试高频考点版(带答案)一.综合考核(共50题)1.设计一个判别表达式中左,右括号是否配对出现的算法,采用()数据结构最佳。
A、线性表的顺序存储结构B、队列C、线性表的链式存储结构D、栈参考答案:D2.队列和栈都是运算受限的线性表,只允许在表的两端进行运算。
()A.正确B.错误参考答案:B3.缺省约束(default constraints)指的是:当向数据库中的表中插入数据时,如果用户没有明确给出某列的值,则系统自动为该字段输入指定的值。
()A、错误B、正确参考答案:B4.关键路径是事件结点网络中()。
A、从源点到汇点的最长路径B、从源点到汇点的最短路径C、最长回路D、最短回路参考答案:A为了使索引键的值在基本表中唯一,在建立索引语句中应使用下面哪个保留字?()A.UNIQUEB.COUNTC.DISDINCTD.UNION参考答案:A6.算法的时间复杂度取决于()。
A、问题的规模B、待处理数据的初态C、A和BD、变量个数参考答案:C7.下列说法正确的是()。
A.图的遍历是从给定的源点出发每一个顶点仅被访问一次B.图的深度遍历不适用于有向图C.遍历的基本算法有两种深度遍历和广度遍历D.图的深度遍历是一个递归过程参考答案:ACD8.数据库结构设计包括:根据实际应用进行需求分析,根据需求分析的结果设计数据库的概念结构和逻辑结构,最后进行数据库(基本数据表)的物理设计。
()A.正确B.错误参考答案:A9.就平均查找长度而言,分块查找最小,折半查找次之,顺序查找最大。
()参考答案:B10.对一棵二叉树进行层次遍历时,应借助于一个栈。
()A、错误B、正确参考答案:A11.循环队列通常用指针来实现队列的头尾相接。
()A.正确B.错误参考答案:B12.以下数据结构中()是非线性数据结构A.树B.字符串C.队D.栈参考答案:A13.输入序列为ABC,可以变为CBA时,经过的栈操作为()A.push,pop,push,pop,push,popB.push,push,push,pop,pop,popC.push,push,pop,pop,push,popD.push,pop,push,push,pop,pop参考答案:BA.a,c,b,dB.b,c,d,aC.c,d,b,aD.d,c,a,b参考答案:ABC15.分布式数据库系统的目标主要包括下面哪些?()A.适应部门分布的组织结构,降低费用B.提高系统的可靠性和可用性C.充分利用数据库资源,提高现有集中式数据库的利用率D.逐步扩展处理能力和系统规模参考答案:ABCD16.下面关于关系数据模型的说法,正确的是哪一项?()A、只能表示实体间的1:1联系B、只能表示实体间的1:n联系C、只能表示实体间的m:n联系D、可以表示实体间的上述三种联系参考答案:D17.折半查找法的查找速度一定比顺序查找法快。
福建师范大学22春“计算机科学与技术”《数据结构概论》作业考核题库高频考点版(参考答案)试题号1

福建师范大学22春“计算机科学与技术”《数据结构概论》作业考核题库高频考点版(参考答案)一.综合考核(共50题)1.设广义表L= ((a, b,c)),则L的长度和深度分别为()A.1和1B.1和3C.1和2D.2和3参考答案:C2.在待排数据基本有序的情况下,快速排序效果最好。
()A、错误B、正确参考答案:A3.折半查找法的查找速度一定比顺序查找法快。
()A、错误B、正确参考答案:A4.若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用()遍历方法最合适。
A.前序B.中序C.后序D.按层次参考答案:C广义表运算式Tail(((a,b),(c,d)))的操作结果是()。
A、(c,d)B、c,dC、((c,d))D、d参考答案:C6.控件包括容器控件和标准控件两种,其中表单集、表单、表格、页框、页面等对象都属于容器控件。
()A、错误B、正确参考答案:B7.基本关系,基本表和基表的含义是相同的。
()A、错误B、正确参考答案:B8.消除递归不一定需要使用栈,此说法。
()A、错误B、正确参考答案:B9.一条没有指明去向的SQL SELECT语句执行之后,会把查询结果显示在屏幕上,要退出这个查询窗口,应按ESC。
()A.正确B.错误参考答案:A对任何数据结构链式存储结构一定优于顺序存储结构。
()A.正确B.错误参考答案:B11.在伙伴系统中的伙伴是指任意两块大小相同、位置相邻的内存块。
()A.正确B.错误参考答案:B12.主键约束(primary key constraints)的含义是,要求表中在指定的列上没有两行具有相同的值,且不允许为空值。
()A、错误B、正确参考答案:B13.循环链表不是线性表。
()A、错误B、正确参考答案:A14.下列排序算法中,在待排序数据已有序时,花费时间反而最多的是()排序。
A、冒泡B、希尔C、快速D、堆15.数据库系统的核心是数据。
()A、错误B、正确参考答案:A16.算术表达式a+b*(c+d/e)转为后缀表达式后为()A.ab+cd+e/*B.abcde/+*+C.abcde/*++D.abcd/+e*-参考答案:B17.数组A[0..4,-1..-3,5..7]中含有元素的个数()A.55B.45C.36D.16参考答案:B18.下面关于线性表的叙述中,正确的是()。
福建师范大学22春“计算机科学与技术”《数据结构概论》期末考试高频考点版(带答案)试卷号3
福建师范大学22春“计算机科学与技术”《数据结构概论》期末考试高频考点版(带答案)一.综合考核(共50题)1.下面说法正确的是()。
A.广义表的表头总是一个广义表B.广义表的表尾总是一个广义表C.广义表难以用顺序存储结构D.广义表可以是一个多层次的结构参考答案:BCD2.下列排序算法中,()算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。
A、堆排序B、冒泡排序C、快速排序D、插入排序参考答案:D3.对于有N个结点的二叉树,其高度为log2n。
()A、错误B、正确参考答案:A4.通常使用队列来处理函数或过程的调用。
()A.正确B.错误参考答案:B5.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是()A.CABDEFGB.ABCDEFGC.DACEFBGD.ADCFEG参考答案:B6.在查找树(二叉树排序树)中插入一个新结点,总是插入到叶结点下面。
()A、错误B、正确参考答案:A7.数据库三级模式体系结构的划分,有利于保持数据库的()。
A、数据独立性B、数据安全性C、结构规范化D、操作可行性参考答案:A8.在数据库设计中用关系模型来表示实体和实体之间的联系。
关系模型的结构是()A.层次结构B.二维表结构C.网状结构D.封装结构参考答案:B9.下列说法正确的是()。
A.图的遍历是从给定的源点出发每一个顶点仅被访问一次B.图的深度遍历不适用于有向图C.遍历的基本算法有两种深度遍历和广度遍历D.图的深度遍历是一个递归过程参考答案:ACD10.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为() (1A.O(0)B.O(1)C.O(n)D.O(n2)参考答案:C11.基本关系,基本表和基表的含义是相同的。
()A.正确B.错误参考答案:A12.队列和栈都是运算受限的线性表,只允许在表的两端进行运算。
()A.正确B.错误参考答案:B13.数据库结构设计分为四个阶段,即需求分析、逻辑结构设计、物理设计和概念结构设计,这几个阶段的先后顺序是()A.需求分析、逻辑结构设计、物理设计、概念结构设计B.概念结构设计、逻辑结构设计、物理设计、需求分析C.物理设计、概念结构设计、需求分析、逻辑结构设计D.需求分析、概念结构设计、逻辑结构设计、物理设计参考答案:D一个关系模式的定义主要包括?()A.关系名和属性名B.属性类型C.属性长度D.关键字参考答案:ABCD15.线性表采用链表存储时,结点和结点内部的存储空间可以是不连续的。
福建师范大学2020年8月课程考试《数据结构概论》作业考核试题.doc
A. 0 3 2 1B. 0 1 2 3C. 0 1 3 2D.0 3 1 2(第9题配图:数组的下标为0,1,2,3)10.对于哈希函数H(key)=key%13,被称为同义词的关键字是( D )A.35和41B.23和39C.15和44D.25和5111.有一个有序表为{ 1,3,9,12,32,41,45,62,77,88,92,100},用折半查找法,若要找63,要经过( C )次与63比较。
A.12B.6C.4D.512.下述几种排序方法中,稳定的排序算法是( A )A.直接插入排序B.快速排序C.堆排序D.希尔排序13.具有n个顶点的无向图至少要有( C )条边才能确保是一个连通图。
A.n(n+1)B.n-1C.n+1D.n(n-1)14.二叉树是非线性数据结构,所以 ( C )A.它不能用顺序存储结构存储B.它不能用链式存储结构存储C.顺序存储结构和链式存储结构都能存储D.顺序存储结构和链式存储结构都不能使用15.有8个结点的无向图最多有( C )条边。
A.14B.28C.56D.112二、填空题(每小题2分,共30分)1.下面程序段的时间复杂度为____0(n)____。
sum=1; for(i=0;sum<n;i++) sum+=1;答:树是有根结点和若干颗子树构成的一个结点所拥有后件的个数称为结点的度所有结点中最大的度就是树的度树的层次是树的深度度为2的树:树的最大结点的度为2二叉树:不存在度大于2的结点.五种基本形态:空二叉树,仅有根节点的二叉树,左子树为空的二叉树,右子树为空的二叉树,左右子树均不为空的二叉数二者不等同四、程序设计题(共13分)1、已知r[]为一维数组,其中r[0]到r[n-1]为待排序的n个元素,排序好的元素仍放在r[0]到r[n-1]中,请写出对该数组进行非递归的直接插入排序算法,取名为insertsort(elemtype r[],int n)。
福师20年秋数据结构概论在线作业二【标准答案】
福师《数据结构概论》在线作业二-0002试卷总分:100得分:100一、单选题(共25道试题,共50分)1.设森林F对应的二叉树为B,它有m个结点,B的根为p,p的右子树结点个数为 n,森林F中第一棵树的结点个数是()A.m-nB.m-n-1C.n+1D.条件不足,无法确定答案:A2.若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用()遍历方法最合适。
A.前序B.中序C.后序D.按层次答案:C3.一个算法应该是()。
A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A 和 C.答案:B4.栈和队列的共同点是()。
A.都是先进先出8.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点E.限制存取点的线性结构F.限制存取点的非线性结构答案:C5.下面的程序段中,对x的赋值语句的频度为()FOR i:=1 TO n DOFOR j:=1 TO n DO x:=x+1;A.O(2n)B.O(n)C.O(n"2)D.O(log2n)答案:C6.算法的计算量的大小称为计算的()A.效率B.复杂性C.现实性D.难度答案:B7.对于栈操作数据的原则是()A.先进先出8.后进先出C.后进后出D.不分顺序答案:B8.下列表达式中结果不是日期型的是?A.CT0D("2000/10/01")B.「99/10/01}+365C.VAL("2000/10/01")D.DATE()答案:C9.关键路径是事件结点网络中()A.从源点到汇点的最长路径B.从源点到汇点的最短路径C.最长回路D.最短回路答案:A10.就平均性能而言,目前最好的内排序方法是()排序法。
A.冒泡B.希尔插入C.交换D.快速答案:D11.栈和队都是()A.顺序存储的B.线性结构C.链式存储的D.非线性结构答案:B12.关系数据库中,实现实体之间的联系是通过表与表之间的?A.公共索引B.公共存储C.公共元组D.公共属性答案:D13.下列关于候选键的说法中错误的是?A.键是惟一标识实体的属性集B.候选键能惟一决定一个元组C.能惟一决定一个元组的属性集是候选键D.候选键中的属性均为主属性答案:C14.假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]=()A.808B.818C.1010D.1020答案:B15.链表不具有的特点是()儿插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比答案:B16.若要求尽可能快地对序列进行稳定的排序,则应选(A.快速排序B.归并排序C.冒泡排序D.堆答案:B17.下面关于关系数据模型的说法,正确的是哪一项?A.只能表示实体间的1:1联系B.只能表示实体间的l:n联系C.只能表示实体间的m:n联系D.可以表示实体间的上述三种联系答案:D18.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()(1<=i<=n+1)。
福师11秋《数据结构概论》在线作业二答案
福师11秋《数据结构概论》在线作业二答案福师《数据结构概论》在线作业二答案试卷总分:100 测试时间:--一、单选题(共25 道试题,共50 分。
)1. 一个算法应该是()。
A. 程序B. 问题求解步骤的描述C. 要满足五个基本特性D. A和C.满分:2 分2. 下列排序算法中()算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。
A. 堆排序B. 冒泡排序C. 快速排序D. 插入排序满分:2 分3. 算法的时间复杂度是由()决定的。
A. 问题的规模B. 待处理数据的初态C. A和BD. 变量个数满分:2 分4. 在用邻接表表示图时,拓扑排序算法时间复杂度为( )。
A. O(n)B. O(n+e)C. O(n*n)D. O(n*n*n)满分:2 分5. 线索二叉树是一种()结构。
A. 逻辑B. 逻辑和存储C. 物理D. 线性满分:2 分6. 广义表((a,b,c,d))的表头是(),表尾是()。
A. aB. ()C. (a,b,c,d)D. (b,c,d)满分:2 分7. 设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()A. 13B. 33C. 18D. 40满分:2 分8. 在用邻接表表示图时,拓扑排序算法时间复杂度为()A. O(n)B. O(n+e)C. O(n*n)D. O(n*n*n)满分:2 分9. 从逻辑上可以把数据结构分为()两大类A. 动态结构、静态结构B. 顺序结构、链式结构C. 线性结构、非线性结构D. 初等结构、构造型结构满分:2 分10. 字符串‘ababaabab’的nextval 为()A. (0,1,0,1,04,1,0,1)B. (0,1,0,1,0,2,1,0,1)C. (0,1,0,1,0,0,0,1,1)D. (0,1,0,1,0,1,0,1,1 )满分:2 分11. 若用冒泡排序方法对序列{10,14,26,29,41,52}从大到小排序,需进行()次比较。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C.O(nlogn) D.O(n2)
4.对平均性能而言,以下最好的内排序方法是( D )。
A.冒泡排序B.希尔排序
C.交换排序 D.快速排序
5.链栈与顺序栈相比,比较明显的优点是( D )
A.插入操作更加方便 B.删除操作更加方便
C.不会出现下溢的情况 D.不会出现上溢的情况
《数据结构概论》期末试卷
一、单项选择题 (每小题2分,共30分)
1.查找n个元素的有序表时,最有效的查找方法是( C )
A.顺序查找B.分块查找
C.折半查找D.二叉排序树查找
2.具有12个关键字的有序表,查找成功时折半查找的平均查找长度是( A )
A.3.1 B.4 C.2.5 D.5
3.在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是( D )
A. 0 3 2 1 B. 0 1 2 3
C. 0 1 3 2 D.0 3 1 2
(第9题配图:数组的下标为0,1,2,3)
10.对于哈希函数H(key)=key%13,被称为同义词的关键字是( C )
A.35和41 B.23和39
C.15和44 D.25和51
11.有一个有序表为{ 1,3,9,12,32,41,45,62,77,88,92,100},用折半查找法,若要找63,要经过( C )次与63比较。
6. 设一棵完全二叉树有700个结点,则共有____350____个叶子结点 。
7. n个顶点e条边的图采用邻接矩阵存储,深度优先遍历算法的时间复杂度为__O(n2)_______;若采用邻接表存储时,该算法的时间复杂度为____O(n+e)________ 。
8. 在堆排序和快速排序中,若初始记录接近正序或反序,则选用____堆排序_____;若初始记录基本无序,则最好选用_____快速排序________。
A.12 B.6
C.4 D.5
12.下述几种排序方法中,稳定的排序算法是( A )
A.直接插入排序B.快速排序
C.堆排序 D.希尔排序
13.具有n个顶点的无向图至少要有( B )条边才能确保是一个连通图。
A.n(n+1) B.n-1
C.n+1 D.n(n-1)
14.二叉树是非线性数据结构,所以 ( C )
A.它不能用顺序存储结构存储 B.它不能用链式存储结构存储
C.顺序存储结构和链式存储结构都能存储 D.顺序存储结构和链式存储结构都不能使用
15.有8个结点的无向图最多有( B )条边。
A.14 B.28
C.56 D.112
二、填空题(每小题2分,共30分)
1.下面程序段的时间复杂度为__O(n)______。
3. 若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是__FEGHDCB__。
4. 散列法存储的基本思想是由__关键码的值______决定数据的存储地ห้องสมุดไป่ตู้。
5. 在一棵度为3的树中,度为2的结点个数是1,度为0的结点个数是6,则度为3的结点个数是____2____。
sum=1; for(i=0;sum<n;i++) sum+=1;
2. 设数组a[M](M为最大空间个数)作为循环队列Q的存储空间,front为队头指针(指向第一个存放数据的位置),rear为队尾指针(指向最后一个存放数据位置的下一个),则判定Q队列的队满条件是__(rear – front)%m= =1___。
6.二叉树中第5层上的结点个数最多为( C )
A.8 B.15
C.16 D.32
7.以下数据结构中,( A )是非线性数据结构。
A.树 B.字符串
C.队 D.栈
8.一个向量的第一个元素的地址是100,每个元素的长度是2 ,则第五个元素的地址是(C )。
A.102 B.110
C.108 D.120
9.已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是( A )
12. 有向图G用邻接矩阵存储,其第i行的所有元素之和等于顶点i的____出度____。
三、解答题(每小题9分,共27分)
1.已知以下的有向图,用Dijkstra算法求出从顶点1出发到各顶点的最短路径(按步给分)。
2.待排序的序列为:25,47,36,21,90,84,62,78,15,32。写出用(大根)堆排序的每一趟的结果。
答:
9. 若要求一个稀疏图G的最小生成树,最好用____克鲁斯卡尔(Kruskal)_____ 算法来求解。
10. 一棵深度为6的满二叉树有 _____63_______ 个分支结点和_____32_____个叶子。
11.用5个权值{3, 2, 4, 5, 1}构造的哈夫曼(Huffman)树的带权路径长度是____33______。
3.一棵度为2的有序树与一棵二叉树有何区别?
度为2的树从形式上看与二叉树很相似,但它的子树是无序的,而二叉树是有序的。即,在一般树中若某结点只有一个孩子,就无需区分其左右次序,而在二叉树中即使是一个孩子也有左右之分。
四、程序设计题(共13分)
1、已知r[]为一维数组,其中r[0]到r[n-1]为待排序的n个元素,排序好的元素仍放在r[0]到r[n-1]中,请写出对该数组进行非递归的直接插入排序算法,取名为insertsort(elemtype r[],int n)。