[考研类试卷]线性表模拟试卷2及答案与解析.doc
《[考研类试卷]线性表模拟试卷2及答案与解析.doc》由会员分享,可在线阅读,更多相关《[考研类试卷]线性表模拟试卷2及答案与解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、线性表模拟试卷 2 及答案与解析一、单项选择题1 下面程序段中带下画线的语句的执行次数的数量级是( )。i=l; WHILE in DO i=i*2;(A)O(n)(B) O(log2n)(C) O(n2)(D)O(nlog 2n)2 算法的时间复杂度取决于( )。(A)问题的规模(B)待处理数据的初态(C) A 和 B(D)以上都不正确3 一个算法应该是( ) 。(A)程序(B)问题求解步骤的描述(C)要满足 5 个基本特性(D)A 和 C4 下面说法错误的是( )。算法原地工作的含义是指不需要任何额外的辅助空间在相同的规模 n 下,复杂度 O(n)的算法在时间上总是优于复杂度 D(2n)的
2、算法所谓时间复杂度,是指在最坏情况下,估算算法执行时间的一个上界同一个算法,实现语言的级别越高,执行效率就越低(A)(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)一定连续(
3、B)一定不连续(C)不一定连续(D)部分连续,部分不连续10 以下属于逻辑结构的是( )。(A)顺序表(B)哈希表(C)线性表(D)单链表11 下面关于线性表的叙述中,错误的是( )。(A)线性表采用顺序存储,必须占用一片连续的存储单元(B)线性表采用顺序存储,便于进行插入和删除操作(C)线性表采用链式存储,不必占用一片连续的存储单元(D)线性表采用链式存储,便于插入和删除操作12 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插人和删除运算,则利用( ) 存储方式最节省时间。(A)顺序表(B)双链表(C)带头结点的双循环链表(D)单循环链表13 若某表最常用的操作是在最后一个结点
4、之后插入一个结点或删除最后一个结点。则采用( )存储方式最节省运算时间。(A)单链表(B)双链表(C)单循环链表(D)带头结点的双循环链表14 静态链表中指针表示的是( )。(A)内存地址(B)数组下标(C)下一元素地址(D)左、右孩子地址15 若长度为 n 的线性表采用顺序存储结构,在其第 i 个位置插入一个新元素的算法的时间复杂度为( )(1in+1)。(A)O(O)(B) O(1)(C) O(n)(D)O(n 2)16 线性表(a 1,a 2, n)以链式存储方式存储时,访问第 i 位置元素的时间复杂度为( )。(A)O(i)(B) O(1)(C) O(n)(D)O(i 一 1)17 非
5、空的循环单链表 head 的尾结点 p 满足( )。(A)p 一next=head(B) p-next=NULL(C) p=NULL(D)p=head18 双向链表中有两个指针域,即 prior 和 next,分别指回前驱及后继,设 p 指向链表中的一个结点,q 指向一个待插入结点,现要求在 p 前插入 q,则正确的插入为( )。(A)p 一prior=q;q-next=p;p 一prior 一next=q;q 一prior=p 一prior;(B) q-prior=p-prior; p-prior 一next=q;q 一next=p;p-prior=q-next;(C) q-next=p;p
6、 一next=q;p-prior 一next=q;q-next=p;(D)p-prior 一next=q; q-next=p;q-prior=p 一prior;p-prior=q ;19 在单链表指针为 p 的结点之后插入指针为 s 的结点,正确的操作是 ( )。(A)p-next=s;s-next=p 一next;(B) s-next=p-next;p-next=s:(C) p-next=s:p-next=s-next;(D)p-next=s 一next;p 一next=s:20 对于一个头指针为 head 的带头结点的单链表,判定该表为空表的条件是 ( )。(A)head=NULL(B)
7、head 一next=NULL(C) head 一next=head(D)head!=NULL二、综合题21 运算是数据结构的一个重要方面。举例说明两个数据结构的逻辑结构和存储方式完全相同,只是对于运算的定义不同,因而两个数据结构具有显著不同的特性,是两个不同的结构。22 将下列函数,按它们在 n时的无穷大阶数,从小到大排序。 n,n 一n3+7n5,nlog 2n,2 n/2,n 3,log 2n,n 1/2+log2n,(3 2)n,n! ,n 2+log2n23 在单链表、双链表和单循环链表中,若仅知道指针 p 指向某结点,不知道头指针,能否将结点*p 从相应的链表中删去?若可以,其时间
8、复杂度各为多少?24 设有集合 A 和集合 B,要求设计生成集合 C=AB 的算法,其中集合 A、集合B 和集合 C 用链式存储结构表示。25 已知单链表 L 是一个递增有序表,试写一高效算法,删除表中值大于 min 且小于 max 的结点( 若表中有这样的结点) ,同时释放被删结点的空间,这里 min 和max 是两个给定的参数。26 试写出在单链表中搜索元素 x 的算法。若 x 存在链表中,则输出它在表中的序号,否则将 x 插到表尾。27 设有一个双链表,每个结点中除有 prior、data 和 next 这 3 个域外,还有一个访问频度域 freq,在链表被启用之前,其值均初始化为零。每
9、当在链表进行一次L0CateNode(L,x)运算时,令元素值为 x 的结点中 freq 域的值加 1,并调整表中结点的次序,使其按访问频度的递减序排列,以便使频繁访问的结点总是靠近表头。试写一符合上述要求的 L,oCateNode 运算的算法。28 两个整数序列:A=a 1, a2,a 3,a m 和 B=b1,b 2,b 3,b n,已经存入两个单链表中,设计一个算法,判断序列 B 是否是序列 A 的子序列。29 已知 3 个带头结点的线性链表 A、线性链表 B 和线性链表 C 中的结点均依元素值自小至大非递减排列(可能存在两个以上值相同的结点),编写算法对链表 A 进行如下操作:使操作后
10、的链表 A 中仅留下 3 个表中均包含的数据元素的结点,且没有值相同的结点,并释放所有无用结点。限定算法的时间复杂度为 D(m+n+p),其中 m、n 和 p 分别为 3 个表的长度。线性表模拟试卷 2 答案与解析一、单项选择题1 【正确答案】 B【知识模块】 线性表2 【正确答案】 C【试题解析】 此题考查的知识点是算法时间复杂度的定义。算法的时间复杂度取决于输入问题的规模和待处理数据的初态,所以选 C、A 和 B 都不全面。【知识模块】 线性表3 【正确答案】 B【试题解析】 此题考查的知识点是算法的定义。一个算法应该是问题求解步骤的描述,所以选 B。算法必须有结束,而程序不一定,所以 A
11、 错,C 描述的是算法的特征不是定义,也错,D 自然错了。【知识模块】 线性表4 【正确答案】 C【试题解析】 此题考查的知识点是算法时间复杂度的理解。算法原地工作的含义是指需要额外的辅助空间为常量,所以 I 错,D(n)运行时间比 D(2n)好,所以是正确的,算法的执行效率与语言级别无关,所以是错误的,描述的是时间复杂度的上限定义,正确。根据题意选 C。【知识模块】 线性表5 【正确答案】 C【试题解析】 此题考查的知识点是基本的数据结构。从逻辑上可以把数据结构分为线性数据结构、非线性数据结构两大类,所以选 C。A 、B 描述的均为物理结构,而 D 描述的不是数据结构的内容。【知识模块】 线
12、性表6 【正确答案】 D【试题解析】 此题考查的知识点是数据结构和存储结构的理解。A 、B 、C 描述的均为物理结构即数据的存储结构,D 是逻辑结构,所以选 D。【知识模块】 线性表7 【正确答案】 D【试题解析】 此题考查的知识点是线性结构的定义。线性结构的定义可简单地理解为元素只有一个前导,一个后继,而 A、B、C 有多个后继,均错,所以选 D。【知识模块】 线性表8 【正确答案】 A【试题解析】 此题考查的知识点是非线性数据结构的定义。A 是层次结构,为非线性数据结构;B、C、D 均为线性数据结构,所以选 A。【知识模块】 线性表9 【正确答案】 A【试题解析】 此题考查的知识点是存储单
13、元问题。连续的存储单元一定连续,所以选 A。B、C、D 都错。【知识模块】 线性表10 【正确答案】 C【试题解析】 此题考查的知识点是对数据结构的逻辑结构理解。数据结构的逻辑结构是指数据之间的逻辑关系,不涉及存储结构。A 、B 、D 都是存储结构、C 是逻辑结构,所以选 C。【知识模块】 线性表11 【正确答案】 B【试题解析】 此题考查的知识点是线性表的存储结构及基本操作。线性表的顺序存储必须占用一片连续的存储单元,不利于进行插入和删除操作,A 描述正确,B不正确;而链式存储不一定占连续的存储单元,利于插入和删除操作,所以 C、D描述正确。根据题意选 B。【知识模块】 线性表12 【正确答
14、案】 A【试题解析】 此题考查的知识点是线性表的存储结构对基本操作的时间影响。根据题意用 B、C、D 三种方法存储,在存取任一指定序号的元素时,要从头向后找,在最后进行插入和删除运算,B、D 可以直接操作, C 也要从头找。而 A 两种操作都可以直接操作,最省时间。所以选 A。【知识模块】 线性表13 【正确答案】 B【试题解析】 此题考查的知识点是线性表的存储结构对基本操作的时间影响。A、B、D 每次都要从头向后找到相应结点,而 C 就标识在最后一个结点,所以选C。【知识模块】 线性表14 【正确答案】 B【试题解析】 此题考查的知识点是静态链表的定义。静态链表存储结构实际就是结构体数组,所
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考研 试卷 线性 模拟 答案 解析 DOC
