数据结构(郑州财税金融职业学院) 中国大学mooc慕课答案2024版 m90333
作业第一章绪论 绪论课后作业
1、 算法的计算量的大小称为计算的()。A. 效率 B. 复杂性 C. 现实性 D. 难度
评分规则: 答案 :B
2、 算法的时间复杂度取决于( )。A. 问题的规模 B. 待处理数据的初态 C. A和B D. 算法的难度
评分规则: 答案:C
3、 下面说法错误的是( )A. 算法原地工作的含义是指不需要任何额外的辅助空间B. 在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O()的算法C. 所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界D. 同一个算法,实现语言的级别越高,执行效率就越低
评分规则: 答案:AA.算法原地工作是指算法所需的辅助空间是常量B.题中是指算法的时间复杂度,不要想当然认为是程序的具体执行时间,而赋予n—个特殊的值。时间复杂度为O(n)的算法,必然总是优于时间复杂度为O()的算法C.时间复杂度总是考虑在最坏情况下的时间复杂度,以保证算法的运行时间不会比它更长D.为严蔚敏教材的原话
4、 从逻辑上可以把数据结构分为( )两大类。A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构
评分规则: 答案:C解释: 顺序和链式是物理结构的分类,逻辑上的分类线性,树形,图等。
5、 1. 以下算法的时间复杂度为( )。void
fun(int n) { int i=l;while(i<=n) i=i2; }A. O(n) B. O() C. O(nlog2n) D. O(log2n)
评分规则: 答案:D解释:基本运算是i=i2,设其执行时间为T(n),则<=n,即T(n)<=log2n=O(log2n)。
6、 以下算法中加下划线语句的执行次数为()。int
m=0, i, j;for(i=l;i<=n;i++) for(j=1;j<=2 i;j++) m++; int
m=0, i, j;for(i=l;i<=n;i++) for(j=1;j<=2i;j++) m++;A. n(n+1) B. n C. n+1 D.
评分规则: 答案:A
7、 程序段for(i=n-l;i>l;i–) for(j=1;j<i;j++) if=”” (a[j]=””>A[j+l]) A[j]与 A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是()。A. O(n) B. O(nlogn) C . O() D. O()
评分规则: 答案:D解释:当所有相邻元素都为逆序时,则最后一行的语句么此都会执行。所以在最坏情况下的该语句频度是O()
</i;j++)>
8、 以下说法正确的是()A. 数据元素是数据这个集合中的个体 B. 数据元素均有数据项组成C. 数据像是数据的基本单位 D. 数据元素是数据的最小单位
评分规则: 答案:A
9、 以下不属于数据的逻辑结构的是()A. 顺序B. 树C. 图D. 集合
评分规则: 答案:D
10、 1. 以下关于抽象数据类型的描述中,正确的是( )A. 抽象数据类型是一个值的集合B. 抽象数据类型是数据的逻辑结构以及操作的组合C. 抽象数据类型的操作可以没有操作结果D. 抽象数据类型只能用C语言来描述
评分规则: 答案:B
第二章线性表 线性表测试
1、 线性表中( )称为线性表的长度。
A:元素的长度
B:数据项的数目
C:数据的长度
D:元素的个数
答案: 元素的个数
2、 在下列关于线性表的叙述中,错误的是()
A:采用顺序存储的线性表,必须占用一片连续的存储单元
B:采用顺序存储的线性表,便于进行插入和删除操作
C:采用链式存储的线性表,不必占用一片连续的存储单元
D:采用链式存储的线性表,便于进行插入和删除操作
答案: 采用顺序存储的线性表,便于进行插入和删除操作
3、 设顺序表的每个元素占8个存储单元。第1个单元的存储地址是100,则第6个元素占用的最后一个存储单元的地址为( )
A:139
B:140
C:147
D:148
答案: 147
4、 在一个表头指针为ph的单链表中,若要在指针q所指结点的后面插入一个由指针p所指向的结点,则执行( )操作
A:q->next=p->next; p->next=q;
B:p->next=q->next; q=p;
C:q->next=p->next; p->next=q;
D:p->next=q->next; q->next=p;
答案: p->next=q->next; q->next=p;
5、 设顺序表的长度为n,并设从表中删除元素的概率相等。则在平均情况下,从表中删除一个元素需移动的元素个数是( )
A:(n-1)/2
B:n/2
C:n(n-1)/2
D:n(n+1)/2
答案: (n-1)/2
6、 在线性链表存储结构下,插入操作算法( )
A:需要判断是否表满
B:需要判断是否表空
C:不需要判断表满
D:需要判断是否表空和表满
答案: 不需要判断表满
7、 若某链表最常用的操作是在最后一个结点之后插入一个元素和删除最后一个元素,则采用( )存储方式最节省运算时间
A:单链表
B:双向链表
C:单循环链表
D:顺序表
答案: 顺序表
8、 设有一个二维数组A[m][n],假设A[0][0]存放位置在644,A[2][2]存放位置在676,每个元素占一个空间,问A[3][3]的存储位置是( )
A:688
B:678
C:692
D:696
答案: 692
9、 已知两个长度分别为m和n的升序链表,若将它们合并为一个长度为m+n的降序链表,则最坏情况下的时间复杂度是( )
A:○(n)
B:○(m*n)
C:○(min(m,n))
D:○(max(m,n))
答案: ○(max(m,n))
10、 在一个长度为n的顺序存储结构的线性表中,向第i个元素(1≤i≤n+1)位置插入一个元素时,需要后移( )个元素
A:n-i
B:n-i+l
C:n-i-l
D:i
答案: n-i+l
11、 线性数据结构的逻辑特征是有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个( )和一个直接后继
答案: 直接前驱
12、 当对一个线性表经常进行存取操作,而很少进行插入和删除操作时,则采用_存储结构为宜。
答案: 顺序
13、 已知一个指针p指向非空不带头单链表的某一个结点,若p满足条件”p->next==NULL”,则p指向单链表的( )结点。
答案: (以下答案任选其一都对)最后一个;
尾
14、 访问一个顺序表中第i个元素的时间复杂度分别是( )
答案: O(1)
15、 一种数据结构的元素集合K和它的二元关系R为:K={a,b,c,d,e,f,g,h},R={<a,b>,<b,c>,<c,d>,<d,e>,<e,f>,<f,g>,<g,h>}。则该数据结构是一种( )结构
答案: 线性</g,h></f,g></e,f></d,e></c,d></b,c></a,b>
作业第二章线性表 线性表作业
1、 线性表中( )称为线性表的长度。A、元素的长度 B、数据项的数目 C、数据的长度 D、元素的个数
评分规则: 答案:D
2、 在下列关于线性表的叙述中,错误的是:______。A、采用顺序存储的线性表,必须占用一片连续的存储单元B、采用顺序存储的线性表,便于进行插入和删除操作C、采用链式存储的线性表,不必占用一片连续的存储单元D、采用链式存储的线性表,便于进行插入和删除操作
评分规则: 答案:B
3、 设顺序表的每个元素占8个存储单元。第1个单元的存储地址是100,则第6个元素占用的最后一个存储单元的地址为______。A、139 B、140 C、147 D、148
评分规则: 答案:C注意审题:第6个元素地址为 100+(6-1)*8=140但是题目考察的是最后一个存储单元的地址,所以是 147
4、 设顺序表的长度为n,并设从表中删除元素的概率相等。则在平均情况下,从表中删除一个元素需移动的元素个数是______。A、(n-1)/2 B、n/2 C、n(n-1)/2 D、n(n+1)/2
评分规则: 答案:A
5、 在一个表头指针为ph的单链表中,若要向表头插入一个由指针p指向的结点,则应执行( )操作。A、ph=p; p->next=ph; B、p->next=ph; ph=p;C、p->next=ph; p=ph; D、p->next=ph->next; ph->next=p;
评分规则: 答案:D
6、 在一个带头结点的双向循环链表中,若要删除指针p所指向的结点则执行( )操作。A、p->prior->next=p->next; p->next->prior=p->prior; free(p);B、p->next->prior=p; p->next=p->next->next;C、p->prior->next=p; p->next=p->next->prior;D、p=p->next; p->prior->next=p->prior;
评分规则: 答案:A
第三章栈和队列 栈和队列单元测试
1、 一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是()
A:edcba
B:decba
C:dceab
D:abcde
答案: dceab
2、 若用一个大小为6的一维数组来实现循环队列,且当前rear和front的值分别为0和3。当从队列中删除一个元素,再加入两个元素后,rear和front的值分别是()
A:1和5
B:2和4
C:4和2
D:5和1
答案: 2和4
下方是付费阅读内容:本平台商品均为虚拟商品,无法用作二次销售,不支持退换货,请在购买前确认您需要购买的资料准确无误后再购买,望知悉!
完整答案需点击上方按钮支付5元购买,所有答案均为章节测试答案,购买后上方矩形框将出现已付费的隐藏内容。
点关注,不迷路,微信扫一扫下方二维码
关注我们的公众号:阿布查查 随时查看答案,网课轻松过
为了方便下次阅读,建议在浏览器添加书签收藏本网页
电脑浏览器添加/查看书签方法
1.按键盘的ctrl键+D键,收藏本页面
2.下次如何查看收藏的网页?
点击浏览器右上角-【工具】或者【收藏夹】查看收藏的网页
手机浏览器添加/查看书签方法
一、百度APP添加/查看书签方法
1.点击底部五角星收藏本网页
2.下次如何查看收藏的网页?
点击右上角【┇】-再点击【收藏中心】查看
二、其他手机浏览器添加/查看书签方法
1.点击【设置】-【添加书签】收藏本网页
2.下次如何查看收藏的网页?
点击【设置】-【书签/历史】查看收藏的网页