锻灌母溉饭稀街款柑桓甭匪钝
第一讲 基本概念(1:15:26)[陈越] 第一讲单元测试
1、 问题:算法的计算量的大小称为计算的( )。
选项:
A:效率
B:复杂性
C:现实性
D:难度
答案: 【复杂性】
2、 问题:在存储数据时,通常不仅要存储各数据元素的值,而且还要存储( )。
选项:
A:数据元素的类型
B:数据的操作方法
C:数据元素之间的关系
D:数据的存取方法
答案: 【数据元素之间的关系】
3、 问题:以下关于数据结构的说法中,正确的是( )。
选项:
A:数据的逻辑结构独立于其存储结构
B:数据的存储结构独立于其逻辑结构
C:数据的逻辑结构唯一决定了其存储结构 数据结构仅由其逻辑结构和存储结构决定
D:数据结构仅由其逻辑结构和存储结构决定
答案: 【数据的逻辑结构独立于其存储结构】
4、 问题:一个算法应该是( )。
选项:
A:程序
B:问题求解步骤的描述
C:要满足五个基本特性
D:程序且满足五个基本特性
答案: 【问题求解步骤的描述】
5、 问题:可以用( )定义一个完整的数据结构。
选项:
A:数据元素
B:数据对象
C:数据关系
D:抽象数据类型
答案: 【抽象数据类型 】
6、 问题:线性表中的每个结点最多只有一个前驱和一个后继。( )
选项:
A:正确
B:错误
答案: 【正确】
7、 问题:线性表的逻辑顺序与物理顺序总是一致的。
选项:
A:正确
B:错误
答案: 【错误】
8、 问题:顺序表的空间利用率高于链表。
选项:
A:正确
B:错误
答案: 【正确】
9、 问题:在长度为n的顺序表中,求第i个元素的直接前驱算法的时间复杂度为O(1)。
选项:
A:正确
B:错误
答案: 【正确】
10、 问题:线性表就是顺序存储的表。
选项:
A:正确
B:错误
答案: 【错误】
11、 问题:线性表的顺序存储优于链式存储。
选项:
A:正确
B:错误
答案: 【错误】
12、 问题:数据的逻辑结构是数据结构在计算机中的表示。
选项:
A:正确
B:错误
答案: 【错误】
第二讲 线性结构(2:19:00)[何钦铭] 2.2节单元测试
1、 问题:栈是( )。
选项:
A:顺序存储的线性结构
B:链式存储的非线性结构
C:限制存取点的线性结构
D:限制存储点的非线性结构
答案: 【限制存取点的线性结构】
2、 问题:( )不是栈的基本操作。
选项:
A:删除栈顶元素
B:删除栈底元素
C:判断栈是否为空
D:将栈置为空栈
答案: 【删除栈底元素】
3、 问题:假定利用数组a[n]顺序存储为一个栈,用top表示栈顶指针,top==-1表示栈空,并已知栈未满,当元素x进栈时所执行的操作为( )。
选项:
A:a[–top]=x
B:a[top–]=x
C:a[++top]=x
D:a[top++]=x
答案: 【a[++top]=x】
4、 问题:和顺序栈相比,链栈有一个比较明显的优势是( )。
选项:
A:通常不会出现栈满的情况
B:通常不会出现栈空的情况
C:插入操作更容易实现
D:删除操作更容易实现
答案: 【通常不会出现栈满的情况】
5、 问题:设链表不带头结点且所有操作均在表头进行,则下列最不适合作为链栈的是( )。
选项:
A:只有表头结点指针,没有表尾指针的双向循环链表
B:只有表尾结点指针,没有表头指针的双向循环链表
C:只有表头结点指针,没有表尾指针的单向循环链表
D:只有表尾结点指针,没有表头指针的单向循环链表
答案: 【只有表头结点指针,没有表尾指针的单向循环链表】
6、 问题:设有一个空栈,栈顶指针为1000H,每个元素需要1个存储单元,在执行Push、Push、Pop、Push、Pop、Push、Pop、Push操作,栈顶指针的值为( )。
选项:
A:1002H
B:1003H
C:1004H
D:1005H
答案: 【1002H】
7、 问题:若一个栈的输入序列是1, 2, 3,……, n,输出序列的第一个元素是n,则第i个输出元是( )。
选项:
A:不确定
B:n-i
C:n-i-1
D:n-i+1
答案: 【n-i+1】
8、 问题:下列关于栈的描述中错误的是( )。
选项:
A:栈是先进后出的线性表
B:栈只能顺序存储
C:栈具有记忆作用
D:对栈的插入与删除操作中,不需要改变栈底指针
答案: 【栈只能顺序存储】
9、 问题:若元素a、b、c、d、e、f依次进栈,允许进栈、退栈操作交替进行,但不允许连续3次进行退栈操作,则不可能得到的出栈序列是( )。
选项:
A:dcebfa
B:cbdaef
C:bcaefd
D:afedcb
答案: 【afedcb】
10、 问题:用S表示进栈操作,用X表示出栈操作,若元素的进栈顺序是1234, 为了得到1342的出栈顺序,相应的S和X的操作序列为( )。
选项:
A:SXSXSSXX
B:SSSXXSXX
C:SXSSXXSX
D:SXSSXSXX
答案: 【SXSSXSXX】
11、 问题:采用共享栈的好处是( )。
选项:
A:减少存取时间,降低发生上溢的可能
B:节省存储空间,降低发生上溢的可能
C:减少存取时间,降低发生下溢的可能
D:节省存储空间,降低发生下溢的可能
答案: 【节省存储空间,降低发生上溢的可能】
12、 问题:任何一个递归过程都可以转换成非递归过程。
选项:
A:正确
B:错误
答案: 【正确】
13、 问题:若输入序列为1,2,3,4,5,6,则通过一个栈可以输出序列1,5,4,6,2,3。
选项:
A:正确
B:错误
答案: 【错误】
14、 问题:两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。
选项:
A:正确
B:错误
答案: 【正确】
15、 问题:栈结构通常采用的两种存储结构是链表存储结构和数组。
选项:
A:正确
B:错误
答案: 【错误】
16、 问题:若让元素1,2,3依次进栈,则出栈次序1,3,2是不可能出现的情况。
选项:
A:正确
B:错误
答案: 【错误】
17、 问题:一个递归算法必须包括终止条件和递归部分。
选项:
A:正确
B:错误
答案: 【正确】
18、 问题:判定一个顺序栈ST(最多元素为m0)为空的条件是top==m0-1。
选项:
A:正确
B:错误
答案: 【错误】
19、 问题:不论是顺序存储结构的栈还是链式存储结构的栈,其入栈和出栈操作的时间复杂度均为O(____)。
答案: 【1】
20、 问题:向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动_个元素。
答案: 【n-i】
第二讲 线性结构(2:19:00)[何钦铭] 2.3节单元测试
1、 问题:下列说法中正确的是( )。
选项:
A:消除递归不一定需要使用栈
B:对同一输入序列进行两组不同的合法入栈和出栈组合操作,所得的输出序列也一定相同
C:通常使用队列来处理函数或过程调用
D:队列和栈都是运算受限的线性表,只允许在表的两端进行运算
答案: 【消除递归不一定需要使用栈】
2、 问题:一个问题的递归算法求解和其相对应的非递归算法求解( )。
选项:
A:递归算法通常效率高一些
B:非递归算法通常效率高一些
C:两者相同
D:无法比较
答案: 【非递归算法通常效率高一些】
3、 问题:为解决计算机主机与打印机之间速度不匹配的问题,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是( )。
选项:
A:栈
B:队列
C:树
D:图
答案: 【队列】
4、 问题:某队列允许在其两端进行入队操作,但仅允许在一端进行出队操作。若元素a、b、c、d、e依次入此队列后再进行出队操作,则不可能得到的出队序列是( )。
选项:
A:bacde
B:dbace
C:dbcae
D:ecbad
答案: 【dbcae 】
5、 问题:栈和队列的主要区别在于( )。
选项:
A:它们的逻辑结构不一样
B:它们的存储结构不一样
C:所包含的元素不一样
D:插入、删除操作的限定不一样
答案: 【插入、删除操作的限定不一样】
6、 问题:循环队列存储在数组A[0…n],则入队时的操作为( )。
选项:
A:rear=rear+1
B:rear=(rear+1)mod(n-1)
C:rear=(rear+1)modn
D:rear=(rear+1)mod(n+1)
答案: 【rear=(rear+1)mod(n+1)】
7、 问题:用链式存储方式的队列进行删除操作时需要( )。
选项:
A:仅修改头指针
B:仅修改尾指针
C:头尾指针都要修改
D:头尾指针可能都要修改
答案: 【头尾指针可能都要修改】
8、 问题:在用单链表实现队列时,队头在链表的( )位置。
选项:
A:链头
B:链尾
C:链中
D:以上都可以
答案: 【链头】
9、 问题:最不适合用做链式队列的链表是( )。
选项:
A:只带队首指针的非循环双链表
B:只带队首指针的循环双链表
C:只带队尾指针的循环双链表
D:只带队尾指针的循环单链表
答案: 【只带队首指针的非循环双链表】
10、 问题:已知循环队列的存储空间为数组A[21], front指向队头元素的前一个位置,rear指向队尾元素,假设当前front和rear的值分别为8和3,则该队列的长度为( )。
选项:
A:5
B:6
C:16
D:17
答案: 【16】
11、 问题:允许对队列进行的操作有( )。
选项:
A:对队列中的元素排序
B:取出最近进队的元素
C:在队列元素之间插入元素
D:删除队头元素
答案: 【删除队头元素】
12、 问题:在一个顺序存储的循环队列中,队头指针指向队头元素的( )。
选项:
A:前一个位置
B:后一个位置
C:队头元素位置
D:队尾元素的前一位置
答案: 【前一个位置】
13、 问题:设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进队列Q,若6个元素出栈的序列是e2、e4、 e3、e6、e5、e1,则栈S的容量至少应该是( )。
选项:
A:6
B:4
C:3
D:2
答案: 【3】
14、 问题:若用一个大小为6的数组来实现循环队列,且当前 rear和 front 的值分别为 0和3,当从队列中删除一个元素,再加入两个元素后,rear 和 front 的值分别为( ) 。
选项:
A:1和5
B:2和4
C:4和2
D:5和1
答案: 【2和4】
15、 问题:设长度为n的链队列采用单循环链表加以表示,若只设一个头指针指向队首元素,则入队操作的时间复杂度为( )。
选项:
A:O(1)
B:O(n)
C:O(
)
D:O(
)
答案: 【O(n)】
16、 问题:在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判空条件是front==rear 。
选项:
A:正确
B:错误
答案: 【正确】
17、 问题:队列是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。( )
选项:
A:正确
B:错误
答案: 【错误】
18、 问题:引入循环队列的目的是提高存储空间的利用率。
选项:
A:正确
B:错误
答案: 【正确】
19、 问题:在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判满条件是front==(rear+1)% maxSize。
选项:
A:正确
B:错误
答案: 【正确】
20、 问题:在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的长度是(rear-front+1)%maxSize。
选项:
A:正确
B:错误
答案: 【错误】
第二讲 线性结构(2:19:00)[何钦铭] 2.1节单元测试
1、 问题:与单链表相比,双链表( )。
选项:
A:可随机访问表中结点
B:访问前后结点更为便捷
C:执行插入、删除操作更为简单
D:存储密度等于 1
答案: 【访问前后结点更为便捷】
2、 问题:设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
选项:
A:单链表
B:单循环链表
C:带尾指针的单循环链表
D:带头结点的双循环链表
答案: 【带头结点的双循环链表】
3、 问题:线性表(a1,a2,…,an)以链接方式存储时,访问第 i 位置元素的时间复杂度为( )。
选项:
A:O(i)
B:O(1)
C:O(n)
D:O(i-1)
答案: 【O(n)】
4、 问题:假定顺序表中的第一个数据元素的存储地址为第200个存储单元,若每个数据元素占用6个存储单元,则第4个数据元素的地址是第( )个存储单元。
选项:
A:218
B:224
C:230
D:212
答案: 【218】
5、 问题:若将某一数组A中的元素,通过头插法插入至单链表B中(单链表初始为空),则插入完毕后,B中结点的顺序( )。
选项:
A:与数组中元素的顺序相反
B:与数组中元素的顺序相同
C:与数组中元素的顺序无关
D:与数组中元素的顺序部分相同、部分相反
答案: 【与数组中元素的顺序相反】
6、 问题:顺序表比链表的存储密度更大,是因为( )。
选项:
A:顺序表的存储空间是预先分配的
B:顺序表不需要增加指针来表示元素之间的逻辑关系
C:链表的所有结点是连续的
D:顺序表的存储空间是不连续的
答案: 【顺序表不需要增加指针来表示元素之间的逻辑关系】
7、 问题:下面关于线性表的叙述中,错误的是( )。
选项:
A:线性表采用顺序存储,必须占用一片连续的存储单元
B:线性表采用顺序存储,便于进行插入和删除操作
C:线性表采用链接存储,不必占用一片连续的存储单元
D:线性表采用链接存储,便于插入和删除操作
答案: 【线性表采用顺序存储,便于进行插入和删除操作】
8、 问题:链表不具有的特点是( )。
选项:
A:插入、删除不需要移动元素
B:可随机访问任一元素
C:不必事先估计存储空间
D:所需空间与线性长度成正比
答案: 【可随机访问任一元素】
9、 问题:单链表中,增加一个头结点的目的是为了( )。
选项:
A:使单链表至少有一个结点
B:标识表结点中首结点的位置
C:方便运算的实现
D:说明单链表是线性表的链式存储
答案: 【方便运算的实现】
10、 问题:线性表的顺序存储结构是一种( )的存储结构。
选项:
A:随机存取
B:顺序存取
C:索引存取
D:散列存取
答案: 【随机存取】
11、 问题:线性表是具有n个( )的有限序列。
选项:
A:数据表
B:字符
C:数据元素
D:数据项
答案: 【数据元素】
12、 问题:一个顺序表所占用的存储空间大小与( )无关。
选项:
A:表的长度
B:元素的存放顺序
C:元素的类型
D:元素中各字段类型
答案: 【元素的存放顺序】
13、 问题:若线性表最常用的操作是存取第i个元素及其前驱和后继元素的值,为了提高效率,应采用( )的存储方式。
选项:
A:单链表
B:双向链表
C:单循环链表
D:顺序表
答案: 【顺序表】
14、 问题:在一个长度为n的顺序表中删除第i个元素(1≤i≤n)时,需向前移动( )个元素。
选项:
A:n
B:i-1
C:n-i
D:n-i-1
答案: 【n-i 】
15、 问题:对于顺序表,访问第i个位置的元素和在第i个位置插入一个元素的时间复杂度为( )。
选项:
A:O(n),O(n)
B:O(n),O(1)
C:O(1),O(n)
D:O(1),O(1)
答案: 【O(1),O(n)】
16、 问题:单链表可以实现随机存取。
选项:
A:正确
B:错误
答案: 【错误】
17、 问题:链表是采用链式存储结构的线性表,进行插入、删除操作时,在链表中比在顺序存储结构中效率高。
选项:
A:正确
B:错误
答案: 【错误】
18、 问题:顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
选项:
A:正确
B:错误
答案: 【错误】
19、 问题:循环链表不是线性表。
选项:
A:正确
B:错误
答案: 【错误】
20、 问题:线性表的特点是每个元素都有一个前驱和一个后继。
选项:
A:正确
B:错误
答案: 【错误】
21、 问题:线性表采用链表存储时,结点和结点内部的存储空间可以是不连续的。
选项:
A:正确
B:错误
答案: 【错误】
22、 问题:线性表若采用链式存储表示,在删除时不需要移动元素。
选项:
A:正确
B:错误
答案: 【正确】
23、 问题:在线性链表中删除中间结点时,只需将被删结点释放。
选项:
A:正确
B:错误
答案: 【错误】
24、 问题:链表中的头结点仅起到标识的作用。
选项:
A:正确
B:错误
答案: 【错误】
25、 问题:一个顺序表所占用的存储空间大小与元素的存放顺序无关。
选项:
A:正确
B:错误
答案: 【正确】
26、 问题:在仅设置了尾指针的循环链表中,访问第一个结点的时间复杂度是O(__)。
答案: 【1】
27、 问题:当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用_存储结构。
答案: 【顺序】
28、 问题:链接存储的特点是利用__来表示数据元素之间的逻辑关系。
答案: 【指针】
29、 问题:将长度为n的单链表链接在长度为m的单链表后面,其算法的时间复杂度是O( )。
答案: 【m】
30、 问题:一个具有n个结点的单链表,在给定值为x的结点后插入一个新结点的时间复杂度为O( ) 。
答案: 【n】
第三讲 树(上) (1:50:08)[何钦铭] 3.1单元测试
1、 问题:树最适合用来表示( )。
选项:
A:有序数据元素
B:无序数据元素
C:元素之间具有分支层次关系的数据
D:元素之间无联系的数据
答案: 【元素之间具有分支层次关系的数据】
2、 问题:在一棵度为4的树T中,若有20个度为4的结点,10个度为3的结点,1个度为2的结点,10个度为1的结点,则树T的叶结点个数是( )。
选项:
A:41
B:82
C:113
D:122
答案: 【82】
3、 问题:假定一棵度为3的树中结点数为50,则其最小高度为( )。
选项:
A:3
B:4
C:5
D:6
答案: 【5】
4、 问题:树的路径长度是从树根到每一结点的路径长度的( )。
选项:
A:总和
B:最小值
C:最大值
D:平均值
答案: 【总和】
5、 问题:一棵有n个结点的树的所有结点的度数之和为( )。
选项:
A:n-1
B:n
C:n+1
D:2n
答案: 【n-1】
6、 问题:在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为6。
选项:
A:正确
B:错误
答案: 【正确】
7、 问题:树内各结点度的最大值称为树的度。
选项:
A:正确
B:错误
答案: 【正确】
8、 问题:对于一个有N个结点、K条边的森林,不能确定它共有几棵树。
选项:
A:正确
B:错误
答案: 【错误】
9、 问题:设一棵树的度为 4 ,其中度为 4 , 3 , 2 , 1 的结点个数分别为 2 , 3 , 3 , 0 。则该棵树中的叶子结点数为_。
答案: 【16】
10、 问题:在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为_个。
答案: 【6】
第三讲 树(上) (1:50:08)[何钦铭] 3.2、3.3单元测试
1、 问题:下列序列中,不能唯一地确定一棵二叉树的是( )。
选项:
A:层次序列和中序序列
B:先序序列和中序序列
C:后序序列和中序序列
D:先序序列和后序序列
答案: 【先序序列和后序序列】
2、 问题:一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满足( )。
选项:
A:所有的结点均无左孩子
B:所有的结点均无右孩子
C:只有一个叶结点
D:是任意一棵二叉树
答案: 【只有一个叶结点】
3、 问题:设一棵二叉树中有3个叶子节点,有8个度为1的节点,则该二叉树中总的节点数为( )。
选项:
A:12
B:13
C:14
D:15
答案: 【13】
4、 问题:在按层次遍历二叉树的算法中,需要借助的数据结构是( )。
选项:
A:队列
B:栈
C:线性表
D:有序表
答案: 【队列】
5、 问题:有64个结点的完全二叉树的深度为( )(根的层次为1)。
选项:
A:8
B:7
C:6
D:5
答案: 【7】
6、 问题:在一棵深度为6的完全二叉树中,最少可以有多少个结点,最多可以有多少个结点( )。
选项:
A:32和54
B:31和64
C:31和63
D:32和63
答案: 【32和63】
7、 问题:在二叉树中有两个结点m和n,如果m是n的祖先,使用( )可以找到从m到n的路径。
选项:
A:先序遍历
B:中序遍历
C:后序遍历
D:层次遍历
答案: 【后序遍历】
8、 问题:设n、m为一棵二叉树上的两个结点,在中序遍历时,n在m前的条件是( )。
选项:
A:n在m右方
B:n是m祖先
C:n在m左方
D:n是m子孙
答案: 【n在m左方】
9、 问题:由二叉树的前序序列和中序序列可以唯一确定一棵二叉树。
选项:
A:正确
B:错误
答案: 【正确】
10、 问题:完全树的叶结点都在层数最大的一层。
选项:
A:正确
B:错误
答案: 【错误】
11、 问题:已知完全二叉树的第七层中有10个叶子结点,则整个二叉树中最多有73个结点。
选项:
A:正确
B:错误
答案: 【错误】
12、 问题:存在这样的二叉树,对它采用任何次序的遍历,结果相同。( )
选项:
A:正确
B:错误
答案: 【正确】
13、 问题:中序遍历二叉排序树可以得到一个有序的序列。( )
选项:
A:正确
B:错误
答案: 【正确】
14、 问题:设高度为h的二叉树只有度为0和度为2的结点,则此类二叉树结点数至少为( )。
答案: 【2h-1】
15、 问题:假定在一棵二叉树中,度为2的结点数为15,度为1的结点数为30,则叶子结点数为_。
答案: 【16】
如需购买完整答案,请点击下方红字:
为了方便下次阅读,建议在浏览器添加书签收藏本网页
添加书签方法:
1.电脑按键盘的Ctrl键+D键即可收藏本网页
2.手机浏览器可以添加书签收藏本网页
获取更多慕课答案,欢迎在浏览器访问我们的网站:http://mooc.mengmianren.com
注:请切换至英文输入法输入域名,如果没有成功进入网站,请输入完整域名:http://mooc.mengmianren.com/
我们的公众号
打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP
本公众号可查看各种网课答案,还可免费查看大学教材答案
点击这里,可查看公众号功能介绍
APP下载
APP功能说明
1.可查看各种网课答案
点击【萌面人官网】,可查看知到智慧树,超星尔雅学习通,学堂在线等网课答案
点击【中国大学慕课答案】,可查看mooc慕课答案
2.可一键领取淘宝/天猫/京东/拼多多无门槛优惠券
如图所示,点击对应图标即可领取淘宝/天猫/京东/拼多多无门槛优惠券
曝勒娇宪努瘫轨绢外疙袄呵点