数据结构(校内) 知到智慧树答案2024 z13755
第一章 单元测试
1、
下列叙述中正确的是( )
A:所谓算法就是计算方法
B:程序可以作为算法的一种描述方法
C:算法设计只需考虑得到计算结果
D:算法设计可以忽略算法的运算时间
答案: 程序可以作为算法的一种描述方法
2、
数据的最小单位是数据项( )
A:对
B:错
答案: 对
3、
在数据结构中,从逻辑上可以把数据结构分成( )
A:动态结构和静态结构
B:紧凑结构和非紧凑结构
C:线性结构和非线性结构
D:内部结构和外部结构
答案: 线性结构和非线性结构
4、
与数据元素本身的形式、内容、相对位置、个数无关的是数据的( )
A:存储结构
B:存储实现
C:逻辑结构
D:运算实现
答案: 逻辑结构
5、
以下说法正确的是( )
A:数据元素是数据的最小单位
B:数据项是数据的基本单位
C:数据结构是带有结构的各数据项的集合
D:一些表面上很不相同的数据可以有相同的逻辑结构
答案: 一些表面上很不相同的数据可以有相同的逻辑结构
6、
下面代码段的时间复杂度是()。
s=0;
for ( i=0; i<n; i++ )
for( j=0; j<n; j++ )
s+=B[i][j];
sum=s;
A:O(1)
B:O(logn)
C:O(n)
D:
答案:
7、
下面代码段的时间复杂度是()。
x=0;
for( i=1; i<n; i++ )
for ( j=1; j<=n-i; j++ )
x++;
A:O(n)
B:
C:
D:O(logn)
答案:
8、
A:对
B:错
答案: 对
9、
A:对
B:错
答案: 错
10、
A:对
B:错
答案: 错
第二章 单元测试
1、
下面关于线性表的叙述中,错误的是哪一个()
A:线性表采用顺序存储,必须占用一片连续的存储单元
B:线性表采用顺序存储,便于进行插入和删除操作
C:线性表采用链接存储,不必占用一片连续的存储单元
D:线性表采用链接存储,便于插入和删除操作
答案: 线性表采用顺序存储,便于进行插入和删除操作
2、
在具有n个结点的单链表中,实现下列哪个操作,其算法的时间复杂度是O(n)?
A:在地址为p的结点之后插入一个结点
B:删除开始结点
C:遍历链表和求链表的第i个结点
D:删除地址为p的结点的后继结点
答案: 遍历链表和求链表的第i个结点
3、
链表不具有的特点是()
A:可随机访问任一个元素
B:插入删除不需要移动元素
C:不必事先估计存储空间
D:所需空间与线性表长度成正比
答案: 可随机访问任一个元素
4、
带头结点的单链表L为空的条件是()
A:L==NULL;
B:L->next==NULL;
C:L->next==L;
D:L->next->next==NULL;
答案: L->next==NULL;
5、
在单链表指针为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;
答案: s->next=p->next;
p->next=s;
6、
在长度为n的顺序表的表尾插入一个新元素的时间复杂度为( )
A:O(n)
B:O(1)
C:O(n2)
D:O(log2n)
答案: O(1)
7、
单链表中,增加头结点的目的是为了( )
A:使单链表至少有一个结点
B:标示表结点中首结点的位置
C:方便运算的实现
D:说明单链表是线性表的链式存储实现
答案: 方便运算的实现
8、
线性表的逻辑顺序与物理顺序总是一致的()
A:对
B:错
答案: 错
9、
取线性表的第i个元素的时间同i的大小有关 ( )
A:对
B:错
答案: 错
10、
线性表的长度是线性表所占用的存储空间的大小()
A:对
B:错
答案: 错
第三章 单元测试
1、
设有六列火车,编号为1,2,3,4,5,6,顺序开进一个栈式结构的站台,问下列输出序列中,哪个是不可能出现的( )。
A:1,2,3,4,5,6
B:6,5,4,3,2,1
C:3,1,2,6,5,4
D:3,2,1,6,5,4
答案: 3,1,2,6,5,4
2、
栈和队列都是运算受限的线性表。( )
A:对
B:错
答案: 对
3、
当用长度为N的数组顺序存储一个栈时,假定用top==N表示栈空,则表示栈满的条件是top==1。( )
A:对
B:错
答案: 错
4、
元素a, b, c, d, e依次进入初始为空的栈中,若元素进栈后可停留、可出栈,直到所有元素都出栈,则在所有可能的出栈序列中,以元素d开头的序列个数是( )。
A:3
B:4
C:5
D:6
答案: 4
5、
已知循环队列存储在一维数组A[0..n-1] 中,且队列非空时front和rear分别指向队头元素和队尾元素。若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front和rear的值分别是( )。
A:0, 0
B:0, n-1
C:n-1, 0
D:n-1, n-1
答案: 0, n-1
6、
数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为( )。
A:r-f
B:(n+f-r)%n
C:n+r-f
D:(n+r-f)%n
答案: (n+r-f)%n
7、
若一个栈以向量V[1..n]存储,初始栈顶指针top设为n+1,则元素x进栈的正确操作是( )。
A:top++; V[top]=x;
B:V[top]=x; top++;
C:top–; V[top]=x;
D:V[top]=x; top–;
答案: top–; V[top]=x;
8、
设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是( )。
A:2
B:3
C:4
D:6
答案: 3
9、
循环队列放在一维数组A[0…M-1]中,end1指向队头元素,end2指向队尾元素的后一个位置。假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。初始时为空,下列判断队空和队满的条件中,正确的是( )。
A:队空:end1 == end2; 队满:end1 == (end2+1) mod M
B:队空:end1 == end2; 队满:end2 == (end1+1) mod (M-1)
C:队空:end2 == (end1+1)mod M; 队满:end1 == (end2+1) mod M
D:队空:end1 == (end2+1); 队满:end2 == (end1+1) mod (M-1)
答案: 队空:end1 == end2; 队满:end1 == (end2+1) mod M
10、
用链接方式存储的队列,在进行删除运算时( )。
A:仅修改头指针
B:仅修改尾指针
C:头、尾指针都要修改
D:头、尾指针可能都要修改
答案: 头、尾指针可能都要修改
下方是付费阅读内容:本平台商品均为虚拟商品,无法用作二次销售,不支持退换货,请在购买前确认您需要购买的资料准确无误后再购买,望知悉!
完整答案需点击上方按钮支付5元购买,所有答案均为章节测试答案,无期末答案。购买后上方矩形框将出现已付费的隐藏内容。
点关注,不迷路,微信扫一扫下方二维码
关注我们的公众号:阿布查查 随时查看答案,网课轻松过
为了方便下次阅读,建议在浏览器添加书签收藏本网页
电脑浏览器添加/查看书签方法
1.按键盘的ctrl键+D键,收藏本页面
2.下次如何查看收藏的网页?
点击浏览器右上角-【工具】或者【收藏夹】查看收藏的网页
手机浏览器添加/查看书签方法
一、百度APP添加/查看书签方法
1.点击底部五角星收藏本网页
2.下次如何查看收藏的网页?
点击右上角【┇】-再点击【收藏中心】查看
二、其他手机浏览器添加/查看书签方法
1.点击【设置】-【添加书签】收藏本网页
2.下次如何查看收藏的网页?
点击【设置】-【书签/历史】查看收藏的网页