国家开放大学20232024《数据结构》模拟试卷及答案解析(2024年).docx
《国家开放大学20232024《数据结构》模拟试卷及答案解析(2024年).docx》由会员分享,可在线阅读,更多相关《国家开放大学20232024《数据结构》模拟试卷及答案解析(2024年).docx(69页珍藏版)》请在三一文库上搜索。
1、国家开放大学2023.2024学年数据结构模拟试卷及答案解析第一章绪论一、选择题1、把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()oA.给相关变量分配存储单元B.物理结构C.算法的具体实现D.逻辑结构2、下列说法中,不正确的是()oA.数据项是数据中不可分割的最小可标识单位B.数据元素是数据的基本单位C.数据可有若干个数据元素构成D.数据项可由若干个数据元素构成3、一个存储结点存储一个()oA.数据元素B.数据结构C.数据项D.数据类型4、数据结构中,与所使用的计算机无关的是数据的()oA.存储结构B.物理和存储结构C.物理结构D.逻辑结构5、下列的叙述中,不属于算法特性的是()
2、oA.可行性B.输入性C.可读性D.有穷性6、算法的时间复杂度与()有关。A.计算机的操作系统B.算法本身C.数据结构D.所使用的计算机。7、口面程序段的时间复杂度是()oi=s=0;while (sn)i+;s+=i;A.O(n0.5)B. O(log2n)C. O(n)D.O(1)8、卜面程序段的时间复杂度是()oint(unsigned int n)if (n=0 I n=l) return 1;else return n*f(n-l);A.O(1)B. O(log2n)C. O(n!)D. O(n)10、在数据结构中,从逻辑上可以把数据结构分为A.动态结构和静态结构B.紧凑结构和非紧凑
3、结构C.内部结构和外部结构D.线性结构和非线性结构11、执行下面程序段时,执行S语句的次数为()ofor (int i=l;i=n;i+)S;A.n2B.n22C.n(n+1)D.n(n+1)212、数据的存储结构包括数据元素的表示和()oA.数据元素间的关系的表示B.数据处理的方法C.数据元素的类型D.相关算法13、树状结构中数据元素的位置之间存在()的关系。A.一对一B.多对多C.每一个元素都有一个直接前驱和一个直接后继D.一对多14、一种逻辑结构()oA.与存储该逻辑结构的计算机相关B.只能有唯一的存储结构C,可以有不同的存储结构D.是指某一种数据元素的性质15、把数据存储到计算机中,并
4、具体体现数据元素间的逻辑结构称为()oA.逻辑结构B.数据元素的存储C,存储结构D.给数据元素分配存储空间二、判断题1 .数据元素是数据的最小单位。()2 .数据的逻辑结构是指各数据元素之间的逻辑关系,是用户根据应用需要建立的。()3 .算法和程序原则上没有区别,在讨论数据结构时二者是通用的。()4 .数据的逻辑结构与数据元素本身的内容和形式无关。()5 .算法和程序都应具有下面一些特征:有输入,有输出,确定性,有穷性,有效性。()6 .只有用面向对象的计算机语言才能描述数据结构算法。()7 .数据元素可以有一个或多个数据项组成。()8 .数据元素之间的抽象关系称为物理结构。()9 .数据的逻
5、辑结构在计算机中的表示称为逻辑结构。()10 .数据的逻辑结构是与存储该结构的计算机相关的。()11 .数据结构中,元素之间存在多对多的关系称为树状结构。()12 .通常可以把某城市中各公交站点间的线路图抽象成树型结构。()13 .通常可以把一本含有不同章节的书的目录结构抽象成线性结构。()14 .结构中的数据元素存在多对多的关系称为图形结构。()15 .数据结构中,数据可以由一个或多个数据项组成。()三、程序题指出下列各算法的时间复杂度。intprime(intn)inti=l;int=(int)sqrt(n);while(+ix)return1;elsereturn0;2、intsuml(
6、intn)(intp=l,s=O;for(inti=l;i=n;i+)P*=i;s+=p;)returns;)3、 intsum2(intn)ints=0;for(int1=1;l=n;1+)intp=l;for(intj=l;j=l;j+)P*=j;s+=p;returns;)4、 intfun(intn)intI=Izs=l;while(snext=NULLB.p-next=q-nextC.p=q-nextD.p-next=q4、在一个单链表中P所指结点之后插入一个S所指的结点时,可执行()。A.p-next=s;s-next=p-nextB.p-next=s-next;C.s-next=
7、p-next;p-next=s;D.p=s-next5、非空的单向循环链表的尾结点满足()(设头指针为head,指针P指向尾结点)。A.p-next=headB.p=NULLC.P=headD.p-next=NULL6、链表不具有的特点是()0A.不必事先估计存储空间B.可随机访问任一元素C.逻辑上相邻的元素在物理位置上不一定相邻D.插入删除不需要移动元素7、带头结点的链表为空的判断条件是()(设头指针为head)。A. head-next=headB. head=NULLC. head-next=NULLD. head!=NLL8、在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始
8、从后到前依次移动了15个元素。则原顺序表的长度为()0A.19B.21C.20D.259、有关线性表的正确说法是()0A.线性表至少要求一个元素B.每个元素都有一个直接前驱和一个直接后继C.表中的元素必须按由小到大或由大到下排序D.除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继10、向一个有127个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动()个元素。A.63.5B.7C.63D.811、一个顺序表第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的地址是()oA.106B.98C.102D.10012、在一个不带头结点的单循环链表中,
9、p、q分别指向表中第一个结点和尾结点,现要删除第一个结点,且p、q仍然分别指向新表中第一个结点和尾结点。可用的语句是p=p-next;和()oA.q-next=pB.p-next=qC.q=pD.p=q-next13、在线性表的顺序结构中,以下说法正确的是()0A.逻辑上相邻的元素在物理位置上不一定相邻B.数据元素是不能随机访问的C.进行数据元素的插入、删除效率较高D.逻辑上相邻的元素在物理位置上也相邻14、对链表,以下叙述中正确的是()0A.不能随机访问任一结点B.插入删除元素的操作一定要要移动结点C.结点占用的存储空间是连续的D.可以通过下标对链表进行直接访问15、设有一个长度为n的顺序表
10、要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为()。A.n-i+1B.iC.n-i-1D.n-i16、在一个单链表HL中,若要向表头插入一个由指针P指向的结点,则执行A. HL=p;p-next=HL;B. p-next=HL;HL=p;C. p-next=HL;p=HL;D. p-next=HL-next;HL-next=p;17、在一个单链表中,已知q所指结点是P所指结点的前驱结点,若在q和P之间插入S结点,则以下操作哪个是正确的()oA. s-net=p-next;p-net=s;B. p-net=s-next;s-net=p;C. p-nex
11、t=s;s-next=q;D. q-next=s;s-next=p;18、在循环双链表的p所指结点之后插入s所指结点的操作是()oA.p-right=s;s-left=p;p-right-left=s;s-right=p-right;B. p-right=S;p-right-left=S;s-left=p;s-right=p-right;C. s-left=p?s-right=p-right;p-right=s;p-right-left=s;D. s-left=p;s-right=p-right:p-right-left=s;p-right=s;19、若HL为一个不带表头结点的循环单链表的表头
12、指针,若有HL-next=HL条件存在,则该循环单链表是()oA.空表B.只有1个元素;C.空表或只有一个元素D.非空表20、若HL为一个带表头结点的单链表的表头指针,则该表为空表的条件是A.HL=NLLB.HL-next=NLLC.HL-next=HLD.HL!=NLL21、设头指针为head的非空的单向链表,指针P指向尾结点,则通过以下操作()可使其成为单向循环链表。选择一项:A.head=p;B.p=head;C.p-next=NULL;D.p-next=head;二、判断题1、设有一个不带头结点的单向循环链表,结点的指针域为next,指针P指向尾结点,现要使P指向第一个结点,可用语句p
13、p-next*()2、设有一个单向链表,结点的指针域为next,头指针为head,P指向尾结点,为了使该单向链表改为单向循环链表,可用语句p-next=head。()3、设有一个单向循环链表,结点的指针域为next,头指针为head,指针P指向表中某结点,若逻辑表达式p-next=head;的结果为真,则P所指结点为尾结点。()4、要在一个单向链表中P所指向的结点之后插入一个S所指向的新结点,若链表中结点的指针域为next,可执行p-next=s;s-next=p-next;的操作。()5、要在一个单向链表中删除P所指向的结点,已知q指向P所指结点的直接前驱结点,若链表中结点的指针域为nex
14、t,则可执行q-next=p-next0()6、要在一个带头结点的单向循环链表中删除头结点,得到一个新的不带头结点的单向循环链表,若结点的指针域为next,头指针为head,尾指针为p,则可执彳亍head=head-next;p-next=head:。()7、设有一个单向循环链表,头指针为head,链表中结点的指针域为next,p指向尾结点的直接前驱结点,若要删除尾结点,得到一个新的单向循环链表,可执行操作p-next=head;。()8、设有一个长度为40的顺序表,要删除第8个元素需移动元素的个数为3。()9、线性表用关键字的顺序方式存储,可以用二分法排序。()10、线性表用顺序方式存储可以
15、随机访问。()三、程序填空1、设线性表以不带头结点的单向链表存储,链表头指针为head,以下程序的功能是输出链表中各结点中的数据域data,完成程序中空格部分。#defineNULLOvoidmain()NODE*headz*p;p=head;*p为工作指针*/doprintf(%dn,1;2;while3I:2、设有一个头指针为head的不带头结点单向链表,p、q是指向链表中结点类型的指针变量,P指向链表中结点a,(设链表中没有结点的数据域与结点a的数据域相同),写出相关语句(1)使该单向链表成为单向循环链表(2)插入结点s,使它成为a结点的直接前驱q=p;x=p-data;while(4)
16、q=q-next;q-next=head;q=p;p=p-next;while(p-data!=x)q=p;5)s-next=p;3、设有一个不带头结点的单向链表,头指针为head,p、PreP是指向结点类型的指针,该链表在输入信息时不慎把相邻两个结点的信息重复输入,以下程序段是在该单向链表中查找这相邻两个结点,把该结点的数据域data打印出来,并把其中之一从链表中删除,填写程序中的空格。prep=head;p=prep-next;while(p-data!=prep-data)prep=p;7;)Printf(min=%d”,8);prep-next=9;第三章数组和广义表一、选择题1 .若
17、让元素1,2,3依次进栈,则出栈顺序不可能为()。A.3,2,1B.2,1,31 .3,1,2D.1,3,22 .一个队列的入队序列是1,2,3,4。则队列的输出序列是()o4150,则栈的不可能输出序列是()40,30,50,10,20A.4,3,2,1B.1,2,3,C.1,4,3,2D.3,2,4,3 .一个栈的进栈序列是10,20,30,40,(进栈出栈可以交替进行)。A.10,20,30,40,50B.50,40,30,2(UO按该栈的可能输出序列依次入队列,该 )(进栈出栈可以交替进行)。B. 10, 6, 4, 8C.40z50,30,20,10D.4 .元素4,6,8,10按顺
18、序依次进栈,队列的可能输出序列是(A.10,8,4,6D. 10, 8, 6, 4)0C.8,4,6,105 .向顺序栈中压入新元素时,应当(A.先移动栈顶指针,再存入元素B.先存入元素,再移动栈顶指针C.先后次序无关紧要D.同时进行6 .在一个栈顶指针为top的链栈中,将一个p指针所指的结点入栈,应执行()0A. top-next=p;B. p-next=top-next;top-next=p;C. p-net=top;top=p;D. p-next=top-next;top=top-next;7 .在一个栈顶指针为top的链栈中删除一个结点时,用X保存被删结点的值,则执行()oA.x=to
19、p;top=top-next;B. x=top-data;C. top=top-next;x=top-data;D. x=top-data;top=top-next;)o8 .一般情况下,将递归算法转换成等价的非递归算法应该设置(A.栈B.队列C.堆栈或队列D.数组9 .表达式a*(b+c)-d的后缀表达式是()o+A.abed*+-B.abc+*d-C.abc*+d-D.-+*abcd10 .判断一个顺序队列Sq(最多元素为m)为空的条件是()oA.sq-rear-sq-front=mB.sq-rear-sq-front-l=mC.sq-front=sq-rearD.sq-front=sq-
20、rear+l11 .判断一个循环队列Q(最多元素为m)为满的条件是()。A. Q-front=Q-rearB. Q-front!=Q-rearC. Q-front=(Q-rear+l)% mD. Q-front= (Q-rear+l)% m12 .判断栈S满(元素个数最多n个)的条件是()oA.s-top=0B.s-top!=0C.s-top=n-lD.s-top!=n-l13 .一个队列的入队顺序是a,bed,则离队的顺序是()0A. azd,cbB.a,b,c,dC.d,c,b,aD.c,b,d,a14 .如果以链表作为栈的存储结构,则退栈操作时()0A.必须判断栈是否满C.必须判断栈是否
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 国家 开放 大学 20232024 模拟 试卷 答案 解析 2024
