对应课程:点击查看
起止时间:2021-03-01到2021-07-10
更新状态:每5天更新一次
第1章 绪论 绪论测验
1、 计算机算法必须具备( ) 三个特性。
A:可执行性、可移植性、可扩充性
B:可执行性、确定性、有穷性
C:确定性、有穷性、稳定性
D:易读性、稳定性、安全性
答案: 可执行性、确定性、有穷性
2、 下面关于算法说法错误的是( )
A:算法最终必须由计算机程序实现
B:为解决某问题的算法同为该问题编写的程序含义是相同的
C:算法的可行性是指指令不能有二义性
D:这几个选项中的说法都是错误的
答案: 这几个选项中的说法都是错误的
3、 下面说法错误的是( )(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度的算法在时间上总是优于复杂度的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低
A:(1)
B:(1),(2)
C:(1),(4)
D:(3)
答案: (1),(4)
4、 从逻辑上可以把数据结构分为( )两大类。
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、 排序算法for(i = n-1 ; i >= 1; i–) for(j = 1; j <= i; j++) if(a[j]>a[j+1]) a[j]<–>a[j+1];则最后一行的语句频度在最坏情况下是( )
A:
B:
C:
D:
答案:
10、 下面一段代码的时间复杂度是?if(A>B){ for(i = 0; i < N; i++) for(j = NN; j > i; j–) A+=B;}else{ for( i = 0; i < N2; i++) for(j = N*2; j > i; j–) A+=B;}
A:
B:
C:
D:
答案:
11、 数据的物理结构是指数据在计算机内的实际存储形式。
A:正确
B:错误
答案: 正确
12、 数据结构的抽象操作的定义与具体实现有关。
A:正确
B:错误
答案: 错误
13、 算法的优劣与算法描述语言无关,但与所用计算机有关。
A:正确
B:错误
答案: 错误
14、 算法可以用不同的语言描述,如果用C语言或JAVA语言等高级语言来描述,则算法实际上就是程序了。
A:正确
B:错误
答案: 错误
15、 数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的存储结构。
A:正确
B:错误
答案: 错误
第2章 线性表 线性表测验
1、 下面关于线性表的叙述中,错误的是哪一个?( )
A:线性表采用顺序存储,便于进行插入和删除操作。
B:线性表采用顺序存储,必须占用一片连续的存储单元。
C:线性表采用链接存储,不必占用一片连续的存储单元。
D:线性表采用链接存储,便于插入和删除操作。
答案: 线性表采用顺序存储,便于进行插入和删除操作。
2、 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
A:顺序表
B:双链表
C:带头结点的双循环链表
D:单循环链表
答案: 顺序表
3、 设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
A:单链表
B:单循环链表
C:带尾指针的单循环链表
D:带头结点的双循环链表
答案: 带头结点的双循环链表
4、 若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为( )(1<=i<=n+1)。
A:
B:
C:
D:
答案:
5、 线性表(a1,a2,…,an)以链式方式存储时,访问第i个位置元素的时间复杂度为( )
A:
B:
C:
D:
答案:
6、 在一个头指针为H的循环单链表中,p 指针指向表尾结点的条件是( )
A:p->next = H
B:p->next = NULL
C:p->next->next = H
D:p->data = -1
答案: p->next = H
7、 在双向循环链表结点p之后插入结点s的操作是( )
A:p->next = s; s->prior = p; p->next->prior = s; s->next = p->next;
B:p->next->prior = s; p->next = s; s->prior = p; s->next = p->next;
C: s->prior = p; s->next = p->next; p->next = s; p->next->prior = s;
D: s->prior = p; s->next = p->next; p->next->prior = s; p->next = s;
答案: s->prior = p; s->next = p->next; p->next->prior = s; p->next = s;
8、 在双向链表结点p之前插入结点q的操作是( )。
A:p->prior = q; q->next = p; p->prior->next = q; q->prior = q;
B:p->prior = q; p->prior->next = q; q->next = p; q->prior = p->prior;
C:q->next = p; q->prior = p->prior; p->prior->next = q; p->prior = q;
D:q->prior = p->priior; q->next = q; p->next = q; p->prior = q;
答案: q->next = p; q->prior = p->prior; p->prior->next = q; p->prior = q;
9、 对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是( )
A:head==NULL
B:head->next==NULL
C:head->next==head
D:head!=NULL
为了方便下次阅读,建议在浏览器添加书签收藏本网页
添加书签方法:
1.电脑按键盘的Ctrl键+D键即可收藏本网页
2.手机浏览器可以添加书签收藏本网页
获取更多MOOC答案,欢迎在浏览器访问我们的网站:http://mooc.mengmianren.com
注:请切换至英文输入法输入域名,如果没有成功进入网站,请输入完整域名:http://mooc.mengmianren.com/
我们的公众号
打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP
本公众号可查看各种网课答案,还可免费查看大学教材答案
点击这里,可查看公众号功能介绍
一键领取淘宝,天猫,京东,拼多多无门槛优惠券,让您购物省省省,点击这里,了解详情
干饭人福利,饿了么红包每日领