济南大学 数据结构试卷
- 格式:docx
- 大小:15.32 KB
- 文档页数:3
………………………………………………密………………………………封………………………………线………………………………山东大学 2018-2019 学年 一 学期 数据结构 课程试卷A题号 一 二 三 四 五 六 七 八 九 十 总分 阅卷人得分学院 专业 级 学号 姓名一、线性结构(30分)。
1、已知线性表:(8,9,2,13,0,7,1,6,5),请完成以下题目。
⑴请描述公式化描述及链表描述的空间需求。
如果需要删除元素13,请描述各自的时间复杂度。
⑵ 请分别进行选择排序、插入排序、快速排序(以8为轴),并给出第一轮排序结束后各自的结果。
⑶ 设计散列表,散列函数为H (k)=k%7,散列表长度为11,请给出线性开型寻址的散列表。
⑷ 基于以上散列表,查找元素1,给出需要的查找次数。
⑸若使用单链表存储上述线性表,请阅读以下程序,并给出程序运行结果及其时间复杂度。
二、层次结构(35分)。
1. 二叉树的层次遍历序列为ABCDEFGHIJ ,中序遍历序列为DBGEHJACIF ,写出该二叉树的前序遍历序列。
2. 一个最大堆为(66,37,41,30,25,40,35,18),依次从中删除两个元素,写出最后得到的堆。
3. 有一份电文中共使用6个字符:A 、B 、C 、D 、E 、F ,它们的出现频率依次为10、6、5、2、15、4,试画出对应的赫夫曼树(请按左子树根节点的权小于等于右子树根节点的权的次序构造,左0右1),并求出每个字符的赫夫曼编码。
4. 对给定输入序列{ 19, 5, 7, 11, 26, 18, 16, 17 },构建AVL 树。
5. 在下列5阶B-树中首先插入关键字85,然后删除关键字70,画出插入元素和删除元素后的B-树。
三、网状结构(35分)。
1. 请给出从加权无向图中生成最小耗费生成树的两种方法,请分别描述其算法思想,并给出各自的时间复杂度。
2. 下面是某有向加权图(顶点A,B,C,D,E)的耗费邻接矩阵,先给出一个拓扑序列,然后,使用Dijkstra算法依次计算出顶点A 至其它各顶点的最短路径和最短路径长度。
一、填空题1.PLC采用循环扫描工作方式,操作系统执行一次循环错做所需的时间称为扫描周期。
2.PLC的开关量输出单元按输出电路所用开关器件的不同可分为继电器输出、晶体管输出和双向晶闸管输出。
3.S7中有三种计数器分别是加计数器(S_CU)、减计数器(S_CD)、可逆计数器(S_CUD)。
4.用STEP-7编写PLC的控制程序,可以选择三种顺序结构:线性式、分布式编程、结构式。
5.STEP-7用户程序通常由组织块(OB)、功能块(FB)或功能(FC)等三种类型的逻辑块和数据块组成。
6.同种数据类型的组合称之为数组,不同类型的数据的组合是结构。
二、简单题1.简述可编程控制器的工作过程。
PLC采用的是循环扫描工作方式。
在PLC中,用户程序按照先后顺序存放在PLC中,工作时CPU 从第一条指令开始执行,直到遇到结束符后又返回第一条,如此周而复始,不断循环。
PLC在运行过程中,总是处在不断循环的顺序扫描过程中。
PLC 上电后,就在系统程序的监控下,周而复始地按固定顺序对系统内部的各种任务进行查询、判断和执行,这个过程实质上是一个不断循环的顺序扫描过程。
一个循环扫描过程称为扫描周期。
2.什么是扫描周期?它主要受什么影响?答:扫描周期是PLC每执行一遍从输入到输出所用的时间。
扫描周期的长短与CPU的运算速度、I/O点的情况、用户应用程序的长短以及编程情况等有关3.s7-300的编程元件有哪些?答:1. 输入映像寄存器(输入继电器)I2.输出映像寄存器(输出继电器)Q3.位存储器M(或称辅助继电器)4.外部输入寄存器PI5.外部输出寄存器PQ6.定时器T(共5种)7.计数器C (共3种)8.数据块寄存器DB9.本地数据寄存器L4.M0.0、MB0、MW0和MD0有何区别?答:M0.0 , MB0, MW0和MD0表示位、字节、字和双字存储单元。
5.s7-300系列PLC共有几种定时器?各种定时器的运行方式有何不同?答:S_PULSE脉冲定时器SP。
数据结构试卷试1一、解释下列术语(每小题4分,共20分)1. 头指针2. 二叉排序树的定义3. 头结点4. 数据的逻辑结构5. 排序方法的稳定性二、选择填空(每小题2分,共20分)(在每小题的4 个备选答案中,选出一个正确的答案,多选少选均不得分)1. 在一个长度为n的顺序表中,在第i个元素(1≤i≤n+1)之前插入一个新元素时顺向后移动( ) 个元素A.n-iB. n-i+1C. n-i-1D.i2. 某个栈的输入序列为1,2,3,4,下面的四个序列中( )不可能是它的输出序列A.1,2,3,4B.2,3,4,1C. 4,3,2,1D.3,4, 1,23. 对二叉排序进行( )遍历可以得到结点的排序序列A.前序B.中序C. 后序D.按层次4.有64个结点的完全二叉树的深度为()。
A 8B 7C 6D 55.折半查找法的时间复杂度是( )A.(n2)B.O(n)C. O(n㏒n)D. O(㏒n)6.A(1:5,1:6)的每个元素占5个单元,将其按行优先次序储存在起始地址为1000的连续的内存单元中,则元素A[5,5]的地址为()。
A 1140B 1145C 1120D 11257. 有n个叶子结点的哈夫曼树的结点总数为()。
A 不确定B 2nC 2n+1D 2n-18. 已知某二叉树的后序遍历序列是dabec, 中序遍历序列是debac, 则它的前遍历序列是()。
A acbedB decabC deabcD cedba9.若循环队列用数组A(0:m-1)存放其元素值,已知其头、尾指针分别是f和r,则当前队列中的元素个数是()。
A (r-f+m)mod mB r-f+1C r-f-1D r-f10. 一个二叉树的先序序列和后序序列正好相反,则该二叉树一定是()的二叉树(树中结点个数大于1)。
A 空或只有一个结点B 高度等于其结点数C 任一结点无左孩子 D任一结点无右孩子三,判断题(每小题2分,对的打√,错的打×,共10分)1.若图G的最小生成树不唯一,则G的边数一定多于n-1,并且权值最小的边有多条(其中n为G的顶点数)。
大学计算机《数据结构》试卷及答案一、单选题(每小题2分,共8分)1、在一个长度为n的顺序线性表中顺序查找值为x的元素时,查找成功时的平均查找长度(即x与元素的平均比较次数,假定查找每个元素的概率都相等)为( )。
A nB n/2C (n+1)/2D (n-1)/22、在一个单链表中,若q所指结点是p所指结点的前驱结点,若在q与p之间插入一个s所指的结点,则执行( )。
A s→link=p→link; p→link=s;B p→link=s; s→link=q;C p→link=s→link; s→link=p;D q →link=s; s→link =p;3、栈的插入和删除操作在()进行。
A 栈顶B 栈底C 任意位置D 指定位置4、由权值分别为11,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为()A 24B 71C 48D 53二、填空题(每空1分,共32分)1、数据的逻辑结构被分为_______、_______ 、_______和_______四种。
2、一种抽象数据类型包括______________和_____________两个部分。
3、在下面的数组a中链接存储着一个线性表,表头指针为a[o].next,则该线性表为_________________________________________________。
a 0 1 2 3 4 5 6 7 8data4、在以HL为表头指针的带表头附加结点的单链表和循环单链表中,判断链表为空的条件分别为________________和____________________。
5、用具有n个元素的一维数组存储一个循环队列,则其队首指针总是指向队首元素的___________,该循环队列的最大长度为__________。
6、当堆栈采用顺序存储结构时,栈顶元素的值可用———————表示;当堆栈采用链接存储结构时,栈顶元素的值可用_______________表示。
《数据结构》试卷(B卷)一、单项选择题1. 线性表是__A___。
A.一个有限序列,可以为空B.一个有限序列,不可以为空C.一个无限序列,可以为空D.一个无限序列,不可以为空2. 在一个长度为n的顺序表中删除第i个元素(0<=i<=n)时,需向前移动 A 个元素。
A.n-i B.n-i+l C.n-i-1 D.i3. 线性表采用链式存储时,其地址_D___。
A.必须是连续的B.一定是不连续的C.部分地址必须是连续的D.连续与否均可以4. 从一个具有n个结点的单链表中查找其值等于x的结点时,在查找成功的情况下,需平均比较___C_个元素结点。
A.n/2 B.n C.(n+1)/2 D.(n-1)/25. 在双向循环链表中,在p所指的结点之后插入s指针所指的结点,其操作是_A D 。
A. p->next=s; s->prior=p;p->next->prior=s; s->next=p->next;B. s->prior=p; s->next=p->next;p->next=s; p->next->prior=s;C. p->next=s; p->next->prior=s;s->prior=p; s->next=p->next;D. s->prior=p; s->next=p->next;p->next->prior=s; p->next=s;6. 设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为__A___。
A.p->next=p->next->next; B.p=p->next;C.p=p->next->next; D.p->next=p;7. 在一个长度为n的顺序表中向第i个元素(0< i<n+l )之前插入一个新元素时,需向后移动__B_个元素。
数据结构试卷(A)答案数据结构试卷(A)答案一、单选题(共10题,每题2分)1. 答案:B解析:选项A和C的时间复杂度为O(n),不符合题目要求。
选项D的时间复杂度为O(n^2),也不符合题目要求。
选项B的时间复杂度为O(1),是最优解。
2. 答案:C解析:选项A的时间复杂度为O(n),不符合题目要求。
选项B和D的时间复杂度为O(n^2),也不符合题目要求。
选项C的时间复杂度为O(logn),是最优解。
3. 答案:A解析:选项B和D的时间复杂度为O(n^2),不符合题目要求。
选项C的时间复杂度为O(logn),也不符合题目要求。
选项A的时间复杂度为O(nlogn),是最优解。
4. 答案:D解析:选项A和B的时间复杂度为O(n^2),不符合题目要求。
选项C的时间复杂度为O(nlogn),也不符合题目要求。
选项D的时间复杂度为O(n),是最优解。
解析:选项A和D的时间复杂度为O(n^2),不符合题目要求。
选项B的时间复杂度为O(nlogn),也不符合题目要求。
选项C的时间复杂度为O(n),是最优解。
6. 答案:B解析:选项A和C的时间复杂度为O(n^2),不符合题目要求。
选项D的时间复杂度为O(n),也不符合题目要求。
选项B的时间复杂度为O(1),是最优解。
7. 答案:D解析:选项A和C的时间复杂度为O(n^2),不符合题目要求。
选项B的时间复杂度为O(nlogn),也不符合题目要求。
选项D的时间复杂度为O(n),是最优解。
8. 答案:C解析:选项A和D的时间复杂度为O(n^2),不符合题目要求。
选项B的时间复杂度为O(nlogn),也不符合题目要求。
选项C的时间复杂度为O(n),是最优解。
9. 答案:A解析:选项B和D的时间复杂度为O(n^2),不符合题目要求。
选项C的时间复杂度为O(nlogn),也不符合题目要求。
选项A的时间复杂度为O(n),是最优解。
解析:选项A和B的时间复杂度为O(n^2),不符合题目要求。
大学计算机《数据结构》试卷及答案一、选择题(30分)1.设一组权值集合W={2,3,4,5,6},则由该权值集合构造的哈夫曼树中带权路径长度之和为()。
(A) 20 (B) 30 (C) 40 (D) 452.执行一趟快速排序能够得到的序列是()。
(A) [41,12,34,45,27] 55 [72,63](B) [45,34,12,41] 55 [72,63,27](C) [63,12,34,45,27] 55 [41,72](D) [12,27,45,41] 55 [34,63,72]3.设一条单链表的头指针变量为head且该链表没有头结点,则其判空条件是()。
(A) head==0 (B) head->next==0(C) head->next==head (D) head!=04.时间复杂度不受数据初始状态影响而恒为O(nlog2n)的是()。
(A) 堆排序(B) 冒泡排序(C) 希尔排序(D) 快速排序5.设二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树满足的条件是()。
(A) 空或只有一个结点(B) 高度等于其结点数(C) 任一结点无左孩子(D) 任一结点无右孩子6.一趟排序结束后不一定能够选出一个元素放在其最终位置上的是()。
(A) 堆排序(B) 冒泡排序(C) 快速排序(D) 希尔排序7.设某棵三叉树中有40个结点,则该三叉树的最小高度为()。
(A) 3 (B) 4 (C) 5 (D) 68.顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为()。
(A) O(n) (B) O(n2) (C) O(n1/2) (D) O(1og2n)9.二路归并排序的时间复杂度为()。
(A) O(n) (B) O(n2) (C) O(nlog2n) (D) O(1og2n)10. 深度为k的完全二叉树中最少有()个结点。
(A) 2k-1-1 (B) 2k-1(C) 2k-1+1 (D) 2k-111.设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点X,则入队列的操作序列为()。
《数据结构》期末考试试卷( A )一、选择题(每小题2分,共24分)1.计算机识别、存储和加工处理的对象被统称为( A )A.数据B.数据元素C.数据结构D.数据类型2.栈和队列都是(A)A.限制存取位置的线性结构B.顺序存储的线性结构C.链式存储的线性结构D.限制存取位置的非线性结构3.链栈与顺序栈相比,比较明显的优点是( D )A.插入操作更加方便B.删除操作更加方便C.不会出现下溢的情况D.不会出现上溢的情况4.采用两类不同存储结构的字符串可分别简称为( B )A.主串和子串B.顺序串和链串C.目标串和模式串D.变量串和常量串5.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是:BA. 110 B .108C. 100D. 1206.串是一种特殊的线性表,其特殊性体现在:BA.可以顺序存储 B .数据元素是一个字符C. 可以链接存储D. 数据元素可以是多个字符7.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为:CA. 2h B .2h-1C. 2h+1D. h+1软件开发网8.树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。
这里,我们把由树转化得到的二叉树叫做这棵树对应的二叉树。
下列结论哪个正确?AA. 树的先根遍历序列与其对应的二叉树的先序遍历序列相同B .树的后根遍历序列与其对应的二叉树的后序遍历序列相同C. 树的先根遍历序列与其对应的二叉树的中序遍历序列相同D. 以上都不对9.一个有n个顶点的无向图最多有多少边?CA. n B .n(n-1)C. n(n-1)/2D. 2n10.在一个图中,所有顶点的度数之和等于所有边数的多少倍?CA. 1/2 B .1C. 2D. 411.当在二叉排序树中插入一个新结点时,若树中不存在与待插入结点的关键字相同的结点,且新结点的关键字小于根结点的关键字,则新结点将成为(A)A.左子树的叶子结点B.左子树的分支结点C.右子树的叶子结点D.右子树的分支结点软件开发网12.对于哈希函数H(key)=key%13,被称为同义词的关键字是( D )A.35和41B.23和39C.15和44D.25和51二、已知某棵二叉树的前序遍历结果为A,B,D,E,G,C,F,H,I,J,其中中序遍历的结果为D,B,G,E,A,H,F,I,J,C。
济南大学xx-xx 学年第一学期考试试卷(模拟卷)课程 数字电路与数字逻辑 授课教师 考试时间 年 月 日 考试班级 姓名 学号一、单项选择题(每小题1.5分,共30分。
把答案填在指定表格内): 1.和二进制数(1100110111.001)等值的十六进制数是( )。
(A)337.2 (B)637.2 (C)1467.1 (D)C37.4 2.和二进制数1100对应的格雷码是( )。
(A)0011 (B)1100 (C)1010 (D)01013.TTL 电路中,输出高电平V OH 电压的标称值是( )。
(A)0.3V (B)2.4V (C)3.6V (D)5V4.若干个具有三态输出的电路输出端并联接到一点工作时,必须保证( )(A) 任何时候最多只能有一个电路处于高阻态,其余应处于工作态。
(B) 任何时候最多只能有一个电路处于工作态,其余应处于高阻态。
(C) 任何时候至少要有两个或三个以上电路处于工作态。
(D) 以上说法都不正确。
5.A+B+C+__A +A __B =( )(A)A (B) __A (C) 1 (D)A+B+C 6.下列等式不成立的是( )(A).B A B A A +=+__(B).(A+B)(A+C)=A+BC (C).AB+AC+BC=AB+BC (D).1________=+++B A AB B A B A7.欲对全班53个同学以二进制代码编码表示,最少需要二进制的位数是( )(A)5 (B)6 (C)10 (D)538.一个T 触发器,在T=1时,来一个时钟脉冲后,则触发器( )。
(A)保持原态 (B)置0 (C) 置1 (D) 翻转 9.在CP 作用下,欲使D 触发器具有Q n+1=__nQ 的功能,其D 端应接( )。
(A)1 (B) 0 (C) nQ (D) __nQ10. 比较两个两位二进制数A=A 1A 0和B=B 1B 0,当A>B 时输出F=1,则F 的表达式是( )。
数据结构的试题及答案一、选择题(每题2分,共10分)1. 在数据结构中,()是数据元素之间的相互关系的集合。
A. 数据B. 结构C. 存储结构D. 逻辑结构答案:D2. 线性表的顺序存储结构中,存储元素的物理位置是()。
A. 连续的B. 离散的C. 任意的D. 无关的答案:A3. 在二叉树的遍历方法中,先访问根节点,然后遍历左子树,最后遍历右子树的遍历方式是()。
A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的冲突解决方法中,()是将所有发生冲突的元素存储在同一个链表中。
A. 线性探测B. 链地址法C. 再散列D. 双散列答案:B5. 在图的遍历算法中,深度优先搜索(DFS)算法使用的辅助数据结构是()。
A. 栈B. 队列C. 链表D. 数组答案:A二、填空题(每题2分,共10分)1. 在数据结构中,算法的时间复杂度通常用()表示。
答案:O(n)2. 一个栈的初始状态为空,依次执行了Push(1), Push(2), Pop(), Push(3), Pop()操作后,栈顶元素是()。
答案:13. 在二叉搜索树中,对于任意节点,其左子树中的所有值都()该节点的值。
答案:小于4. 哈希表的装载因子是表中已填入的元素个数与哈希表的()之比。
答案:总容量5. 图的邻接矩阵表示法中,如果两个顶点之间有边相连,则对应的矩阵元素值为()。
答案:1三、简答题(每题5分,共20分)1. 请简述什么是递归,并给出一个递归算法的例子。
答案:递归是一种算法设计技巧,它允许一个函数直接或间接地调用自身。
递归算法的例子是计算阶乘:n! = n * (n-1)!,其中n! = 1当n=0时。
2. 请解释什么是堆排序,并简述其基本步骤。
答案:堆排序是一种基于堆数据结构的比较排序算法。
基本步骤包括构建最大堆,然后重复移除堆顶元素并调整剩余元素以保持最大堆属性。
3. 请描述什么是图的广度优先搜索(BFS)算法,并给出其算法步骤。
2022年济南大学计算机应用技术专业《计算机系统结构》科目期末试卷A(有答案)一、选择题1、"从中间开始"设计的"中间"目前多数是在( )。
A.传统机器语言级与操作系统机器级之间B.传统机器语言级与微程序机器级之间C.微程序机器级与汇编语言机器级之间D.操作系统机器级与汇编语言机器级之间2、静态流水线是指( )A.只有一种功能的流水线B.功能不能改变的流水线C.同时只能完成一种功能的多功能流水线D.可同时执行多种功能的流水线3、CRAY-I的流水线是( )A.多条单功能流水线B.一条单功能流水线C.多条多功能流水线D.一条多功能流水线4、对汇编语言程序员透明的是()A.I/O方式中的DMA访问B.浮点数据表示C.访问方式保护D.程序性中断5、输入输出系统硬件的功能对()是透明的。
A.操作系统程序员B.应用程序员C.系统结构设计人员D.机器语言程序设计员6、计算机系统多级层次中,从下层到上层,各级相对顺序正确的应当是()。
A.汇编语言机器级,操作系统机器级,高级语言机器级B.微程序机器级,传统机器语言机器级,汇编语言机器级C.传统机器语言机器级,高级语言机器级,汇编语言机器级D.汇编语言机器级,应用语言机器级,高级语言机器级7、计算机组成设计不考虑( )。
A.专用部件设置B.功能部件的集成度C.控制机构的组成D.缓冲技术8、下列说法正确的是()A."一次重叠"是一次解释一条指令B."一次重叠"是同时解释相邻两条指令C.流水方式是同时只能解释两条指令D."一次重叠"是同时可解释很多条指令9、以下说法中,不正确的是,软硬件功能是等效的,提高硬件功能的比例会:( )A.提高解题速度B.提高硬件利用率C.提高硬件成本D.减少所需要的存贮器用量10、以下说法中,不正确的是()。
软硬件功能是等效的,提高硬件功能的比例会A.提高解题速度B.提高硬件利用率C.提高硬件成本D.减少所需存储器用量二、判断题11、监听协议用来保持 Cache一致性的两种策略分别是写无效(Write-Invalidate)策略和写更新(Write-Update)策略。
数据结构试题6一、单项选择题(每小题3分,共30分)1.设栈的输入序列是1、2、3、4,则______不可能是其出栈序列。
( )[A] 1234 [B] 2134 [C] 1432 [D] 43122.在一个具有n个结点的线性链表中查找某个结点,若查找成功,需要平均比较_____个结点。
( )[A] n [B] n/2 [C] (n+1)/2 [D] (n-1)/23.设每个字符占一个字节,二维数组A中每个元素有6个字符组成,其行下标从0到9,列下标从0到3,元素_____当A按行优先存储起始地址与当A按列优先存储的起始地址相同。
( )[A] A[3][0] [B] A[3][1] [C] A[3][2] [D] A[2][3]4.具有2000个结点的非空二叉树的最小深度为_______。
( )[A] 9 [B] 10 [C] 11 [D] 125.已知某二叉树的后根序列是dabec,中根序列是debac,则先根序列是_____。
( )[A] acbed [B] decab [C] deabc [D] cedba6. 无向图中所有边的数目等于所有顶点的度数之和的_____倍。
( )[A] 1 [B] 2 [C] 1/2 [D] 不一定7.递归函数F(n)=F(n-1)+n+1(n>1)的递归体是_______。
( )[A] F(0)=0 [B] F(1)=1 [C] F(n)=n+1 [D] F(n)=F(n-1)+n+18. 若需要在O(nlog2n)的时间内完成对n个元素的排序,且要求排序是稳定的,则可选择的排序方法是_______。
( )[A] 快速排序[B] 堆排序[C] 归并排序[D] 直接插入排序9.在对n个元素的序列进行排序时,堆排序所需要的附加存储空间是__。
( )[A] O(1) [B] O(log2n) [C] O(n) [D] O(n log2n)10.假定有K个关键字互为同义词,若用线性探查法把这K个关键字存入散列表中,则总的探查次数至少为______。
大学计算机《数据结构》试卷及答案第一部分 选择题(30分)一、项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后括号内。
1.算法指的是( )A .计算机程序B .解决问题的计算方法C .排序算法D .解决问题的有限运算序列 2.线性表采用链式存储时,结点的存储地址( ) A .必须是不连续的B .连续与否均可C .必须是连续的D .和头结点的存储地址相连续3.将长度为n 的单链表链接在长度为m 的单链表之后的算法的时间复杂度为() A .O (1) B .O (n ) C .O (m ) D .O (m+n ) 4.由两个栈共享一个向量空间的好处是:( ) A .减少存取时间,降低下溢发生的机率 B .节省存储空间,降低上溢发生的机率 C .减少存取时间,降低上溢发生的机率 D .节省存储空间,降低下溢发生的机率5.设数组data[m]作为循环队列SQ 的存储空间,front 为队头指针,rear 为队尾指针,则执行出队操作后其头指针front 值为( )A .front=front+1B .front=(front+1)%(m-1)C .front=(front-1)%mD .front=(front+1)%m 6.如下陈述中正确的是( )A .串是一种特殊的线性表B .串的长度必须大于零C .串中元素只能是字母D .空串就是空白串7.若目标串的长度为n ,模式串的长度为[n/3],则执行模式匹配算法时,在最坏情况下的时间复杂度是( )A .O ()B .O (n )C .O (n 2)D .O (n 3) 8.一个非空广义表的表头( )A .不可能是子表B .只能是子表C .只能是原子D .可以是子表或原子9对应的稀疏矩阵是( )n 3080650400000--⎡⎣⎢⎢⎤⎦⎥⎥.08067000504000000300--⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥10.在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( )A .4B .5C .6D .711.在含n 个顶点和e 条边的无向图的邻接矩阵中,零元素的个数为( ) A .e B .2e C .n 2-e D .n 2-2e12.假设一个有n 个顶点和e 条弧的有向图用邻接表表示,则删除与某个顶点v i相关的所有弧的时间复杂度是( )A .O(n)B .O(e)C .O(n+e)D .O(n*e)13.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下: 20,15,21,25,47,27,68,35,84 15,20,21,25,35,27,47,68,84 15,20,21,25,27,35,47,68,84则所采用的排序方法是( )A .选择排序B .希尔排序C .归并排序D .快速排序 14.适于对动态查找表进行高效率查找的组织结构是( )A .有序表B .分块有序表C .三叉排序树D .线性链表 15.不定长文件是指( )A .文件的长度不固定B .记录的长度不固定C .字段的长度不固定D .关键字项的长度不固定第二部分 非选择题(共70分)二、填空题(本大题共10小题,每小题2分,若有两个空格,每个空格1分,共20分)不写解答过程,将正确的答案写在每小题的空格内。
《数据结构》试题集及答案第⼀部分选择题(30分)⼀、⼀、项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个选项中只有⼀个选项是符合题⽬要求的,请将正确选项前的字母填在题后的括号内。
1.算法指的是()A .计算机程序B .解决问题的计算⽅法C .排序算法D .解决问题的有限运算序列2.线性表采⽤链式存储时,结点的存储地址()A .必须是不连续的B .连续与否均可C .必须是连续的D .和头结点的存储地址相连续3.将长度为n 的单链表链接在长度为m 的单链表之后的算法的时间复杂度为()A .O (1)B .O (n )C .O (m )D .O (m+n )4.由两个栈共享⼀个向量空间的好处是:()A .减少存取时间,降低下溢发⽣的机率B .节省存储空间,降低上溢发⽣的机率C .减少存取时间,降低上溢发⽣的机率D .节省存储空间,降低下溢发⽣的机率5.设数组data[m]作为循环队列SQ 的存储空间,front 为队头指针,rear 为队尾指针,则执⾏出队操作后其头指针front 值为()A .front=front+1B .front=(front+1)%(m-1)C .front=(front-1)%mD .front=(front+1)%m6.如下陈述中正确的是()A .串是⼀种特殊的线性表B .串的长度必须⼤于零C .串中元素只能是字母D .空串就是空⽩串A .O (n 3)B .O (n )C .O (n 2)D .O (n 3)8.⼀个⾮空⼴义表的表头()A .不可能是⼦表B .只能是⼦表C .只能是原⼦D .可以是⼦表或原⼦9.假设以带⾏表的三元组表表⽰稀疏矩阵,则和下列⾏表0 2 3 3 5对应的稀疏矩阵是()A.08067000000050400000--B.08067000504000000300--C. 0806 0000 0200 5040 0000 --D.-10.在⼀棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( )A.4 B.5 C.6 D.711.在含n个顶点和e条边的⽆向图的邻接矩阵中,零元素的个数为( ) A.e B.2e C.n2-e D.n2-2e12.假设⼀个有n个顶点和e条弧的有向图⽤邻接表表⽰,则删除与某个顶点v i 相关的所有弧的时间复杂度是( )A.O(n) B.O(e) C.O(n+e) D.O(n*e)13.⽤某种排序⽅法对关键字序列(25,84,21,47,15,27,68,35,20)进⾏排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采⽤的排序⽅法是()A.选择排序B.希尔排序C.归并排序D.快速排序14.适于对动态查找表进⾏⾼效率查找的组织结构是()A.有序表B.分块有序表C.三叉排序树D.线性链表15.不定长⽂件是指()A.⽂件的长度不固定B.记录的长度不固定C.字段的长度不固定D.关键字项的长度不固定第⼆部分⾮选择题(共70分)17.在⼀个带头结点的单循环链表中,p指向尾结点的直接前驱,则指向头结点的指针head可⽤p表⽰为head= 。
数据结构本科试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构和非线性结构的划分依据是()。
A. 结构的形状B. 是否有分支C. 是否有子结构D. 是否有层次关系2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。
A. 插入和删除操作快B. 存储密度高C. 存储空间可以动态分配D. 存储空间利用率高3. 在二叉树的遍历中,先序遍历的顺序是()。
A. 根-左-右B. 左-根-右C. 右-根-左D. 根-右-左4. 哈希表解决冲突的方法不包括()。
A. 分离链接法B. 开放定址法C. 链地址法D. 顺序存储法5. 在图的遍历中,深度优先搜索(DFS)算法使用的是()。
A. 栈B. 队列C. 链表D. 数组6. 快速排序算法的时间复杂度在最坏情况下是()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)7. 以下哪个排序算法是稳定的()。
A. 快速排序B. 堆排序C. 归并排序D. 选择排序8. 一个有n个顶点的无向图中,其边的最大数量是()。
A. n(n-1)/2B. n(n+1)/2C. n^2D. 2n9. 以下哪个数据结构适用于实现稀疏矩阵()。
A. 顺序存储B. 链式存储C. 压缩存储D. 散列存储10. 以下哪个算法不是动态查找算法()。
A. 二分查找B. 顺序查找C. 斐波那契查找D. 平衡二叉树查找答案:1. B2. B3. A4. D5. A6. C7. C8. A9. C10. B二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的时间复杂度是指算法执行过程中所需要的基本操作的______与输入数据量之间的关系。
2. 一个长度为n的线性表采用顺序存储结构时,其最后一个元素的存储地址为LOC(n),则第i个元素的存储地址LOC(i)为______。
3. 堆是一种特殊的完全二叉树,其中每个父节点的值都______其子节点的值(填“大于”或“小于”)。
数据结构试题及答案
一、选择题(每小题2分,共20分),每个题的备选答案中,只有一个是正确的,请将答案
填写在试题的括号中。
1、对顺序存储的线性表,设其长度为20,在任何位置上插入或删除操作都是等概率的。插入
一个元素时平均要移动表中的( )个元素。
A.10 B.9 C.11 D.12
2、若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采
用( )存储方式最节省运算时间。
A.单链表 B.仅有头指针的单循环链表
C.双链表 D.仅有尾指针的单循环链表
3、当利用大小为n的数组顺序存储一个栈时,假定用top==n表示栈空,则向这个栈插入一个
元素时,首先应执行( )语句修改top指针。
A.top++ B.top-- C.top = 0 D.top
4、设入栈顺序为A,B,C,D,E,则出栈序列不可能是( )。
A.EDCBA B.ABCDE C.ADEBC D.ABDEC
5、已知关键字序列(46, 79, 56, 38, 40, 84),采用快速排序(以位于最左位置的关键字
为基准)得到的第一次划分结果为:( )
A.{ 40, 38, 46, 56, 79, 84 } B.{ 38, 46, 79, 56, 40, 84 }
C.{ 38, 46, 56, 79, 40, 84 } D.{ 40, 38, 46, 79, 56, 84 }
6、一个有n个顶点和n条边的无向图一定是( )。
A.不连通的 B.连通的 C.有环的 D.无环的
7、在一棵具有n个结点的二叉树的第i层上,最多具有( )个结点。
A.2i B.2i-1 C.2i+1 D.2n
8、对线性表采用折半查找法,该线性表必须( )。
A.采用顺序存储结构 B.采用顺序存储结构,且元素按值有序
C.采用链式存储结构 D.采用链式存储结构,且元素按值有序
9、在一棵具有n个结点的完全二叉树中,分支结点的最大编号为( )。
A.?(n-1)/2? B.?n/2? C.?n/2? D.?n/2? -1
10、在一个无向图中,所有顶点的度数之和等于所有边数的 ( ) 倍。
A.3 B.1/2 C.1 D.2
二、填空题(每小题2分,共20分),请将正确的结果,填写在试题的横线上。
1、带头结点的循环链表L为空的条件是 。
2、序列A={12, 70, 33, 65, 24, 56}给出对应于序列A的大顶堆HA(以线性数组表
示) 。
3、每次使两个相邻的有序表合并成一个有序表,这种排序方法叫做________排序。
4、设循环队列Q的队头和队尾指针分别为front和rear,队列的最大容量为MaxSize,且规
定判断队空的条件为Q.front = = Q.rear,则队列的长度
为 。
5、已知数组A[0..11][0..8]按行优先存储,每个元素占有5个存储单元,且A[0][0]的地址
为1000(十进制),则A[6][7]的地址为________________。
6、已知广义表A=(a,(),(b,(c))),则其深度为 。
7、在一棵二叉树中,假定度为2的结点个数为5个,度为1的结点个数为6个,则叶子结点
数为__ ____个。
8、设森林F中有3棵树,第1、2、3棵树的结点个数分别为n1、n2、n3,当把森林F转换成
一棵二叉树后,其根结点的右子树中有________个结点。
9、将含有64个结点的完全二叉树从根结点开始顺序编号,根结点为第1号,其他结点自上向
下,同一层自左向右连续编号。则第30号结点的双亲结点的编号为 。
10、有序表(1,2,3,4,5,6,7,8,9)用折半查找方法,查找元素3的比较次数为 。
三、判断题(每小题2分,共20分),下列说法正确的在前面括号内画“√”,错误的画
“×”。
( )1、线性表的逻辑顺序与存储顺序总是一致的。
( )2、在单链表中,要取得某个元素,只要知道该元素的指针即可,因此,单链表是随
机存取的存储结构。
( )4、栈是仅限定在一端进行插入和删除的线性表。
( )5、用邻接矩阵存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小
与图中的顶点个数无关,只与图的边数有关。
( )6、对于AOE网络,加速任一关键活动就能使整个工程提前完成。
( )7、对两棵具有相同关键字集合而形状不同的二叉排序树,按中序遍历它们得到的序
列的顺序是一样的。
( )8、有向网中从一个顶点到另一个顶点的最短路径只有一条。
( )9、对于一棵具有n个结点,其深度为h的二叉树,进行任一种次序遍历的时间复杂
度为O(n)。
( )10、快速排序和堆排序是不稳定的排序方法。
四、应用题(共40分)
1、 (10分)假定一个待哈希存储的线性表为{32,75,63,48,94,25,36,18},哈希地址空间为
[0…10],若采用哈希函数H(k)=k MOD 11和线性探测再散列法处理冲突,试给出对应的哈希
表(给出求解过程),并求出在等概率情况下查找成功时的平均查找长度。
2、(10分)有8个带权结点,其权值分别为4,26,12,8,7,13,15,15,试以它们为叶
结点生成一棵Haffman树(给出过程),然后求出该树的带权路径长度WPL。
3、(10分)已知一棵二叉树,其先序序列为:ABDEGMNCFH,中序序列为:DBMGNEACHF,请画
出这棵二叉树(给出过程),并给出其后序序列。
4、(10分)已知关键字序列(37,23,42,55,61,36,28,33),请给出采用快速排序法
对序列作升序排序时每一趟的过程。
答案
一、选择题(每小题2分,共20分)
题号 1 2 3 4 5 6 7 8 9 10
答案 A D B C A C B B C D
二、填空题(每小题2分,共20分)
1、 L->next==L
2、{70,65,56,12,24,33}
3、归并
4、 (Q.rear-Q.front+MaxSize)%MaxSize
5、1305
6、3
7、6
8、n2+n3
9、15
10、3
三、判断题(每小题2分,共20分)
题号 1 2 3 4 5 6 7 8 9 10
答案 × × × √ × × √ × √ √
四、应用题(共40分)
1、过程4分,哈希表4分,平均查找长度2分,共10分
H(32)=32 Mod 11=10 H(75) =75 Mod 11=9 H(63) =63 Mod 11=8
H(48) =48 Mod 11=4 H(94) =94 Mod 11=6 H(25) =25 Mod 11=3
H(36) =36 Mod 11=3,与25冲突,所以H1=(3+1)Mod 11=4,与48冲突,H2=(3+2)Mod
11=5,所以36的哈希地址是5, H(18) =18 Mod 11=7
0 1 2 3 4 5 6 7 8 9 10
25 48 36 94 18 63 75 32
查找成功时,36将比较3次,其它都是比较1次,所以平均查找长度是:
ASL=(1+1+1+1+1+1+3+1)/8=10/8=5/4=1.25
2、WPL值正确3分;过程每步1分;共7分
WPL=4*4+7*4+12*3+13*3+8*3+15*3+15*3+26*2=285
3、过程8分,后序序列2分,共10分
后序序列:DMNGEBHFCA
4、快速排序的每一趟的过程:(共10分)
初始序列 37 23 42 55 61 36 28 33
[33 23 28 36] 37 [61 55 42] (2分)
[28 23] 33 [36] 37 [61 55 42] (2分)
[23] 28 33 36 37 [61 55 42] (2分)
23 28 33 36 37 [42 55] 61 (2分)
23 28 33 36 37 42 [55] 61 (2分)