山大网络《数据结构》试卷( B 卷)
《数据结构》期终考试试卷(B卷)及答案
适用专业:一、单项选择题(每题2分,共40分)1.算法的时间复杂度是指( )A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数2.在一个单链表HL中,若要删除由指针q所指向结点的后继结点,则执行()。
A.p = q->next ; p->next = q->next; B.p = q->next ; q->next = p;C.q->next = q->next->next; q->next = q; D.p = q->next ; q->next = p->next; 3.下列叙述中正确的是( )A.线性表是线性结构 B. 栈与队列是非线性结构C.线性链表是非线性结构 D. 二叉树是线性结构4.若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。
A.3,2,1 B.2,1,3 C.3,1,2 D.1,3,25.图的广度优先搜索类似于树的()次序遍历。
A.先根B.中根C.后根D.层次6.具有n个顶点的有向无环图最多可包含()条有向边。
A.n-1 B.n C.n(n-1)/2 D.n(n-1)7.已知单链表A长度为m,单链表B长度为n,若将B联接在A的末尾,其时间复杂度应为( ) 。
A.O(1) B.O(m) C.O(n) D.O(m+n)8.若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是( )。
A.s->next=p->next; p->next=s; B.p->next=s; s->next=p->next;C.p->next=s->next; s->next=p; D.s->next=p; p->next=s->next;9.假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为( )。
山东大学数据结构模拟试卷
山东大学数据结构(一)一、单选题(每题2 分,共20分)1.栈和队列的一路特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有一路点2.用链接方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]寄存位置在644(10),A[2][2]寄存位置在676(10),每一个元素占一个空间,问A[3][3](10)寄存在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 +1 C.2K-1 D. 2k-17.如有18个元素的有序表寄存在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A. O(1)B. O(n)C. O(1og2n)D. O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
.6 C二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时刻复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
36山东大学网络教育数据结构期末考试试题及参考答案
15
线性表是具有n个( )的有限序列(n>0)。
A、表元素
B、字符
C、数据元素
D、数据项
E、信息项
我的答案:C
16
若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
A、顺序表
B、双链表
C、带头结点的双循环链表
A、-A+B*C/DE
B、-A+B*CD/E
C、-+*ABC/DE
D、-+A*BC/DE
我的答案:D
二.判断题(共20题,50.0分)
1
数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形的( )
我的答案:√
2
链式存储在插入和删除时需要保持物理存储空间的顺序分配,不需要保持数据元素之间的逻辑顺序( )
D、单循环链表
我的答案:A
17
某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。
A、单链表
B、仅有头指针的单循环链表
C、双链表
D、仅有尾指针的单循环链表
我的答案:D
18
下面给出的四种排序法中( )排序法是不稳定性排序法。
我的答案:×
3
在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针( )
我的答案:√
4
通常递归的算法简单、易懂、容易编写,而且执行的效率也高( )
我的答案:×
5
一个广义表的表尾总是一个广义表( )
山东大学网络教育 135#——数据结构 考试试题及参考答案
年级________;层次________;专业________;姓名________复习资料,自我完善,仅供参考,考完上交! 《数据结构》试卷(A 卷)一、选择题1. 数据结构是指(A )。
A.数据元素的组织形式B.数据类型C.数据存储结构D.数据定义2. 数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为(C )。
A.存储结构B.逻辑结构C.链式存储结构D.顺序存储结构 3. 树形结构是数据元素之间存在一种( D )。
A.一对一关系B.多对多关系C.多对一关系D.一对多关系4. 设语句x++的时间是单位时间,则以下语句的时间复杂度为(B )。
for(i=1; i<=n; i++)for(j=i; j<=n; j++)x++;A.O(1)B.O(2n )C.O(n)D.O(3n ) 5. 算法分析的目的是(1) C ,算法分析的两个主要方面是(2) A 。
(1) A.找出数据结构的合理性 B.研究算法中的输入和输出关系C.分析算法的效率以求改进D.分析算法的易懂性和文档性(2) A.空间复杂度和时间复杂度 B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性6. 计算机算法指的是(1) C ,它具备输入,输出和(2) B 等五个特性。
(1) A.计算方法 B.排序方法C.解决问题的有限运算序列D.调度方法(2) A.可行性,可移植性和可扩充性 B.可行性,确定性和有穷性C.确定性,有穷性和稳定性D.易读性,稳定性和安全性7. 数据在计算机内有链式和顺序两种存储方式,在存储空间使用的灵活性上,链式存储比顺序存储要( B )。
A.低B.高C.相同D.不好说。
数据结构B模拟试卷及答案-推荐下载
A.3 B.5 C.8 D.9 10.用某种排序方法对线性表(25,84,21,47,15,27,68,35,20)进行排序时,元 素序列的变化情况如下: 25,84,21,47,15,27,68,35,20 15,84,21,47,25,27,68,35,20 15,20,21,47,25,27,68,35,84 15,20,21,25,47,27,68,35,84 . . 15,20,21,25,27,35,47,68,84 则采用的排序方法是( )。 A.冒泡排序 B.快速排序 C.归并排序 D.选择排序 二、求解题(共计 59 分) 1.已知二叉树的扩展前序序列:FKHφφBEφφφGAφφDφCφφ.请画出该二叉树 并写出该树的中序和后序序列。(12 分)
5.循环队列用数组 A[0,m-1]存放其元素值,已知其头尾指针分别是 front 和 rear,则当前队列中的元素个数是()。 A.(rear-front+m)%m B.read-front+1 C.read-front-1 D.read-front
6.设二维数组 a[0…m-1][0…n-1]按行优先顺序存储在首地址为 loc(a00)的存 储区域中,每个元素占 d 个单元,则 aij 的地址为________。 A. loc(a00) +( i×n+ j) ×d B. loc(a00) +(j×m+i) ×d C. loc(a00) +((j-1)×n+i-1) ×d D. loc(a00) +((j-1)×m+i-1) G=<V,E>,其中 V={a,b,c,d,e},E={(a,b),(a,e),(b,e),(b,c),(c,e),(e,d)}.请 画出图 G 的邻接矩阵,邻接表。从结点 a 出发,分别写出按深度优先搜索法和广 度优先搜索法进行遍历的结点序列。(12 分)
2022年山西大学数据科学与大数据技术专业《计算机网络》科目期末试卷B(有答案)
2022年山西大学数据科学与大数据技术专业《计算机网络》科目期末试卷B(有答案)一、选择题1、某IP网络的连接如图所示,在这种配置下IP全局广播分组不能够通过的路径是()。
A.计算机P和计算机Q之间的路径B.计算机P和计算机S之间的路径C.计算机Q和计算机R之间的路径D.计算机S和计算机T之间的路径2、当数据由主机A送传至主机B时,不参与数据封装工作的是()。
A.物理层B.数据链路层C.网络层D.传输层3、下列关于拥塞控制策略的描述中,()符合开环控制。
A.在拥塞已经发生或即将发生时做出反应,调节交通流B.根据用户的协议限制进入网络的交通,从而阻止拥塞的发生C.需要实时将网络的状态反馈到调节交通的地点(通常是源)D.不需要预留某些资源,资源的使用率很高4、下列关于路由算法的描述中,()是错误的。
A.静态路由有时也被称为非自适应的算法B.静态路由所使用的路由选择一旦启动就不能修改C.动态路由也称为自适应算法,会根据网络的拓扑变化和流量变化改变路由决策D.动态路由算法需要实时获得网络的状态5、对于无序接收的滑动窗口协议,若序号位数为n,则发送窗口最大尺寸为()A.2n -1B.2nC.2n-1D.2n-16、有一个调制解调器,它的调制星形图如图所示。
当它传输的波特率达到2400Baud时,实际传输的比特率为()A. 2400bit/sB. 4800bit/sC. 9600bit/sD. 19200bit/s7、oS17层模型中,提供端到端的透明数据传输服务、差错控制和流量控制的层是()。
A.物理层B.网络层C.传输层D.会话层8、有一个TCP连接,当其拥塞窗口为32个分组大小时超时。
假设网络的RTT是固定的5s,不考虑比特开销,即分组不丢失,则系统在超时后处于慢启动阶段的时间有()。
A.10sB.20sC.30sD.40s9、如果用户程序使用UDP进行数据传输,那么()协议必须承担可靠性方面的全部工作。
山东大学网络教育期末考试试题及答案-数字电路基础(B)
数字电路基础B
一、
1、数制转换(其中B 表示二进制,D 表示十进制,H 表示十六进制)
1)(0101.0110)B = ( )D
2)(8FA.C6)H = ( )B
3)(0.35)H = ( )D
4)(73)D = ( )H
2、利用逻辑代数的基本公式和常用公式化简下列各式:
5)=++BC AC B A
6)=++C B A BC A )(
7)=+++CD D AC ABC C A
8)=++B A B B A
二、
双互补对和反相器引出端如图所示,试连接成3输入端与非门。
三、试分析如图所示逻辑电路的功能,写出逻辑表达式和真值表。
四、
主从结构JK触发器,已知J,K,CP端的电压波形如图所示,试画出Q,Q端对应的电压波形。
设触发器的初始状态为Q=0。
五、
用2输入非门和反相器设计一个三位的奇偶校验器,即当3位数中有奇数个1时输出为1,否则输出为0。
六、
如图所示电路为由CMOS门电路组成的多谐振荡器。
1、画出V1,V01和V02的波形图
2、求出振荡周期T的表达式。
2022年山东大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷B(有答案)
2022年山东大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷B(有答案)一、填空题1、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句中使用______保留字。
2、在SELECT命令中,______子句用于选择满足给定条件的元组,使用______子句可按指定列的值分组,同时使用______子句可提取满足条件的组。
3、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,将2NF经过转变为3NF______。
4、如图所示的关系R的候选码为;R中的函数依赖有;R属于范式。
一个关系R5、在设计局部E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计,所以各个局部E-R图之间难免有不一致的地方,称为冲突。
这些冲突主要有______、______和______3类。
6、某在SQL Server 2000数据库中有两张表:商品表(商品号,商品名,商品类别,成本价)和销售表(商品号,销售时间,销售数量,销售单价)。
用户需统计指定年份每类商品的销售总数量和销售总利润,要求只列出销售总利润最多的前三类商品的商品类别、销售总数量和销售总利润。
为了完成该统计操作,请按要求将下面的存储过程补充完整。
7、数据库系统是利用存储在外存上其他地方的______来重建被破坏的数据库。
方法主要有两种:______和______。
8、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
9、数据库管理系统的主要功能有______________、______________、数据库的运行管理以及数据库的建立和维护等4个方面。
10、数据仓库主要是供决策分析用的______,所涉及的数据操作主要是______,一般情况下不进行。
2022年智慧树数据结构(山东大学)单元测试答案
1数据结构的形式定义是(D, S),其中D是数据元素的有限集,S是D上的关系有限集。
(答案)对2在数据结构中,从层次上可以把数据结构分成(答案)逻辑结构和存储结构3线性表若采用链式存储结构时,要求内存中可用的存储单元的地址(答案)连续不连续都可以4下面程序的时间复杂度为(答案)O(m×n)5若需要利用形参直接访问实参,则应把形参变量说明为参数。
(答案)引用第二章测试1带头结点的单链表L为空的判定条件是(答案)L→next= =NULL2非空的循环单链表L的尾结点(由p所指向)满足(答案)p→next= =L3在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行。
(答案)p→next=s; s→next=q4在一个单链表中,若删除p所指结点的后继结点,则执行(答案)q=p→next; p→next=q→next5在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的算法的时间复杂度为(答案)O(n)1、一个栈的入栈序列是A,B,C,D,E,则栈的不可能的输出序列是。
(答案)DCEAB2、在一个链队中,假设f和r分别为队首和队尾指针,则插入s所指结点的运算是。
(答案)r->next=s; r=s3、一个队列的入队序列是1,2,3,4,则队列的输出序列是。
(答案)1,2,3,44、一个中缀算术表达式为1+(3-x)*y,则其对应的后缀算术表达式为。
(答案)13x-y*+5、一个栈的入栈序列是A,B,C,D,E,f,出栈的序列是B,D,C,F,E,A,则栈的容量至少应()(答案)3第四章测试1如下图所示的4棵二叉树中,不是完全二叉树。
(答案)C2在线索化二叉树中,t所指结点没有左子树的充要条件是(答案)t->ltag= =13对一个满二叉树,m个树叶,n个结点,深度为h,则(答案)n=2h-14一个具有1025个结点二叉树的高h 为()(答案)11~10255一颗非空的二叉树的先序遍历序列和后序便利序列正好相反,则该二叉树满足()(答案)只有一个叶子结点第五章测试1(答案)22对于如下图所示的图,若从顶点a出发深度优先搜索遍历,得到的顶点序列为。
《 数据结构B卷 》期末考试试卷附答案
《数据结构B卷》期末考试试卷附答案一、名词解释(每题2分,共10分)1. 数据类型2. 线性表3. 队列4. 串5. 图二、判断正误(正确打√,错误划×,每题1分,共10分)1.算法必须有输入参数。
( )2.链表能够动态分配结点空间。
( )3.栈是一种先进先出的线性表。
( )4.二维数组能够实现随机存取。
( )5.在二叉树的第i层上至多有2i-1个结点(i≥1)。
( )6.在有向图中,<v1,v2>与<v2,v1>是两条不同的边。
( )7.邻接表只能用于有向图的存储。
()8.有向图不能进行广度优先遍历( )9.平均查找长度ASL可作为衡量一个查找算法效率高低的标准。
( )10.所有的内部排序算法都是稳定的。
( )三、填空(每空2分,共10分)1.线性表、栈和队列都是( )结构。
2.栈是一种特殊的线性表,允许插入和删除运算的一端称为()。
3.队列的出队操作总是在( )进行。
4.按存储结构不同,串可分为( )。
5.深度为k 的完全二叉树至少有( )个结点。
四、选择题(单选或多选)(每题2分,共30分)1.算法原则上都是能够由机器或人完成的。
整个算法好像是一个解决问题的“工作序列”,其中的每一步都是我们力所能及的一个动作。
这是算法的( )。
A. 正确性B. 有穷性C. 确定性D. 可行性2.设一棵二叉树中,度为2的结点数为9,则该二叉树的叶结点的数目为( )。
A.10 B. 11 C. 12 D. 不确定3.某二叉树结点的先根序列为E、A、C、B、D、G、F,对中根遍历的序列为A、B、C、D、E、F、G。
该二叉树结点的后根遍历的序列为( )A. [B 、D 、C 、A 、F 、G 、E]B. [B 、D 、C 、F 、A 、G 、E]C. [E 、G 、F 、A 、C 、D 、B]D. [E 、G 、A 、C 、D 、F 、B]4.关于队列的说法正确的是()A. 先进先出B. 属于非线性结构C. 只能采用顺序存储D.属于散列结构5.用单链表表示的链式队列的队尾是在链表的( )位置A. 表尾B. 表头C. 表中D. 任意6.树的非叶子结点是()。
《数据结构》期末考A、B卷(本科)
武夷学院期末考试试卷( 09级计算机科学与技术专业2010 ~2011 学年度第 1 学期) 课程名称 数据结构 A 卷 考试形式 闭卷 考核类型 考试 本试卷共 五 大题,卷面满分100分,答题时间120分钟。
一、选择题:(本大题共10小题,每小题2分,共20分)1. 某内排序方法的稳定性是指( )。
A .该排序算法不允许有相同的关键字记录 B .该排序算法允许有相同的关键字记录 C .平均时间为0(n log n )的排序方法 D .以上都不对2.下面程序段的时间复杂度为( )。
for(i=2;i<=n;++I) for(j=2;j<=i-1;++j) {++x;a[i ,j]=x;}A.O (1)B.O (log 2n )C.O (n )D.O (n 2)3.非空的循环单链表head 的尾结点p 满足( )。
A.p->next=head ;B. p->next=NULL ;C.p =NULL ;D. p->next->next =head ;4.设栈s 和队列Q 的初始状态为空, 元素b 1 ,b 2, ,b 3 , b 4 , b 5 和b 6 依次通过栈S ,一个元素出栈后即进队列Q ,若6个元素出队的序列是b 2 ,b 4 ,b 3 ,b 6 ,b 5 ,题号 一二三四五六七八总分 复核人得分得分 评卷人………………密……………………封…………………………装…………………订………………………线………………………系别 专业(班级) 姓名 学号b 1 ,,则栈S的容量至少应该是()。
A. 3B. 4C. 5D.其它5.表头和表尾均为空表的广义表是()。
A.()B.(())C.((()))D.((),())6.下列二叉排序树中,满足平衡二叉树定义的是()。
A . B.C. D.7.二维数组A的成员是4个字符(每个字符占一个存储单元)组成的串,行下标i的范围从1到8,列下标j的范围从1到10,若A按行优先方式存储,起始地址为SA,那么元素A[8][5]的起始地址为()。
山东开放大学数据结构期末考试复习题及参考答案
数据结构期末考试复习题注:找到所考试题直接看该试题所有题目和答案即可。
查找按键:Ctrl+F超越高度一、单选题1、当两个元素出现逆序的时候就交换位置,这种排序方法称为()0A、插入排序B、交换排序C、选择排序D、归并排序正确答案:B2、有关线性表的正确说法是()oA、每个元素都有一个直接前驱和一个直接后继B、线性表至少要求一个元素C、表中的元素必须按由小到大或由大到下排序D、除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继正确答案:D3、在下列排序方法中,关键字比较的次数与记录的初始排列秩序无关的是()oA、希尔排序B、冒泡排序C、插入排序D、选择排序正确答案:D4、串是()。
A、不少于一个字母的序列B、任意个字母的序列C、不少于一个字符的序列D、有限个字符的序列正确答案:D5、向顺序栈中压入新元素时,应当()oA、先移动栈顶指针,再存入元素B、先存入元素,再移动栈顶指针C、先后次序无关紧要D、同时进行正确答案:A6、有一个长度为10的有序表,按折半查找对该表进行查找,在等概率情况下查找成功的平均比较次数为()oA、29/10B、31/10C、26/10D、29户正确答案:A7、已知一个有序表为{11,22,33,44,55,66,77,88,99},则顺序查找元素55需要比较()次。
A、3B、4C、5D、6正确答案:C8、从未排序序列中依次取出元素与己经排好序的序列中的元素作比较。
将其放入已排序序列的正确的位置上,此方法称为()A、插入排序B、选择排序C、交换排序D、归并排序正确答案:A9、对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则所有顶点邻接表中的结点总数为()。
A、nB、eC、2nD、2e正确答案:D10、在一个栈顶指针为top的链栈中,将一个P指针所指的结点入栈,应执行()。
A、top->ne×t=p;B、p->next=top->next;top->next=p;C^p->next=top;top=p;D^p->ne×t=top->ne×t;top=top->next;正确答案:C11、在一个链队中,假设f和r分别为队头和队尾指针,则插入S所指结点的运算为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》试卷(B卷)
一、单项选择题
1.线性表是__A___。
A.一个有限序列,可以为空B.一个有限序列,不可以为空
C.一个无限序列,可以为空D.一个无限序列,不可以为空
2.在一个长度为n的顺序表中删除第i个元素(0<=i<=n)时,需向前移动A个元素。
A.n-i B.n-i+l C.n-i-1D.i
3.线性表采用链式存储时,其地址_D___。
A.必须是连续的B.一定是不连续的
C.部分地址必须是连续的D.连续与否均可以
4.从一个具有n个结点的单链表中查找其值等于x的结点时,在查找成功的情况下,需平均比较___C_个元素结点。
A.n/2B.n C.(n+1)/2D.(n-1)/2
5.在双向循环链表中,在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.n-i B.n-i+l C.n-i-1D.i
8.在一个单链表中,已知q结点是p结点的前趋结点,若在q和p之间插入s结点,则须
执行B
A.s->next=p->next;p->next=s
B.q->next=s;s->next=p
C.p->next=s->next;s->next=p
D.p->next=s;s->next=q
9.以下关于线性表的说法不正确的是_C__。
A.线性表中的数据元素可以是数字、字符、记录等不同类型。
B.线性表中包含的数据元素个数不是任意的。
C.线性表中的每个结点都有且只有一个直接前趋和直接后继。
D.存在这样的线性表:表中各结点都没有直接前趋和直接后继。
10.线性表的顺序存储结构是一种__A____的存储结构。
A.随机存取B.顺序存取C.索引存取D.散列存取
11.在顺序表中,只要知道__D___,就可在相同时间内求出任一结点的存储地址。
A.基地址B.结点大小
C.向量大小D.基地址和结点大小
12.在等概率情况下,顺序表的插入操作要移动__B__结点。
A.全部B.一半
C.三分之一D.四分之一
13.在_C_运算中,使用顺序表比链表好。
A.插入B.删除
C.根据序号查找D.根据元素值查找
14.在一个具有n个结点的有序单链表中插入一个新结点并保持该表有序的时间复杂度是__B___。
A.O(1)B.O(n)
C.O(n2)D.O(log2n)
15.设有一个栈,元素的进栈次序为A,B,C,D,E,下列是不可能的出栈序列___C_____。
A.A,B,C,D,E B.B,C,D,E,A
C.E,A,B,C,D D.E,D,C,B,A
16.在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为
栈顶指针,当做出栈处理时,top变化为__C___。
A.top不变B.top=0C.top--D.top++
17.向一个栈顶指针为hs的链栈中插入一个s结点时,应执行_B__。
A.hs->next=s;B.s->next=hs;hs=s;
C.s->next=hs->next;hs->next=s;D.s->next=hs;hs=hs->next;
18.在具有n个单元的顺序存储的循环队列中,假定front和rear分别为队头指针和队尾指针,则判断队满的条件为__D___。
A.rear%n==front B.(front+l)%n==rear
C.rear%n-1==front D.(rear+l)%n==front
二、填空题
1.线性表是一种典型的_线性结构__结构。
2.在一个长度为n的顺序表的第i个元素之前插入一个元素,需要后移_n-i+1_个元素。
3.顺序表中逻辑上相邻的元素的物理位置_必定相邻_。
4.要从一个顺序表删除一个元素时,被删除元素之后的所有元素均需前移一个位置,移动过程是从_前____向__后___依次移动每一个元素。
5.在线性表的顺序存储中,元素之间的逻辑关系是通过__物理存储位置___决定的;在线性表的链接存储中,元素之间的逻辑关系是通过链域的指针值决定的。
6.在双向链表中,每个结点含有两个指针域,一个指向__前趋__结点,另一个指向_后继___结点。
7.当对一个线性表经常进行存取操作,而很少进行插入和删除操作时,则采用__顺序__存储结构为宜。
相反,当经常进行的是插入和删除操作时,则采用__链接_存储结构为宜。
8.顺序表中逻辑上相邻的元素,物理位置__一定_相邻,单链表中逻辑上相邻的元素,物理位置_不一定__相邻。
9.线性表、栈和队列都是__线性__结构,可以在线性表的_任何_位置插入和删除元素;对于栈只能在_栈顶__位置插入和删除元素;对于队列只能在_队尾__位置插入元素和在队头位置删除元素。
10.根据线性表的链式存储结构中每个结点所含指针的个数,链表可分为__单链表___和__双链表__;而根据指针的联接方式,链表又可分为__非循环链表__和__循环链表__。
11.在单链表中设置头结点的作用是_使空表和非空表统一;算法处理一致__。
12.对于一个具有n个结点的单链表,在已知的结点p后插入一个新结点的时间复杂度为_O(1)__,在给定值为x的结点后插入一个新结点的时间复杂度为__O(n)__。
13.对于一个栈作进栈运算时,应先判别栈是否为_栈满__,作退栈运算时,应先判别栈是否为__栈空___,当栈中元素为m时,作进栈运算时发生上溢,则说明栈的可用最大容量为__m____。
为了增加内存空间的利用率和减少发生上溢的可能性,由两个栈共享一片连续的内存空间时,应将两栈的_栈底___分别设在这片内存空间的两端,这样只有当___两个栈的栈顶在栈空间的某一位置相遇____时才产生上溢。
三、简答题
1.描述以下三个概念的区别:头指针,头结点,表头结点。
答:头指针是指向链表中第一个结点(即表头结点)的指针;在表头结点之前附设的结点称为头结点;表头结点为链表中存储线性表中第一个数据元素的结点。
若链表中附设头结点,则不管线性表是否为空表,头指针均不为空,否则表示空表的链表的头指针为空。
2.线性表的两种存储结构各有哪些优缺点?
答:线性表具有两种存储结构即顺序存储结构和链接存储结构。
线性表的顺序存储结构可以直接存取数据元素,方便灵活、效率高,但插入、删除操作时将会引起元素的大量移动,因而降低效率:而在链接存储结构中内存采用动态分配,利用率高,但需增设指示结点之间关系的指针域,存取数据元素不如顺序存储方便,但结点的插入、删除操作较简单。
3.对于线性表的两种存储结构,如果有n个线性表同时并存,而且在处理过程中各表的长度会动态发生变化,线性表的总数也会自动改变,在此情况下,应选用哪一种存储结构?为什么?
答:应选用链接存储结构,因为链式存储结构是用一组任意的存储单元依次存储线性表中的各元素,这里存储单元可以是连续的,也可以是不连续的:这种存储结构对于元素的删除或插入运算是不需要移动元素的,只需修改指针即可,所以很容易实现表的容量的扩充。
4.对于线性表的两种存储结构,若线性表的总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素,应选用何种存储结构?试说明理由。
答:应选用顺序存储结构,因为每个数据元素的存储位置和线性表的起始位置相差一个和数
据元素在线性表中的序号成正比的常数。
因此,只要确定了其起始位置,线性表中的任一个数据元素都可随机存取,因此,线性表的顺序存储结构是一种随机存取的存储结构,而链表则是一种顺序存取的存储结构。