2024知到答案 数据结构(中国海洋大学版) 最新智慧树满分章节测试答案
第一章 单元测试
1、单选题:
图书馆的数目检索系统采用 关系的数据结构。
选项:
A:集合
B:线性
C:树形
D:图状
答案: 【线性】
2、单选题:
是相互之间存在一种或多种特定关系的数据元素的集合。
选项:
A:数据
B:数据元素
C:数据项
D:数据结构
答案: 【数据结构】
3、单选题:
( )是一个值的集合和定义在这个值集上的一组操作的总称。
选项:
A:数据类型
B:数据元素
C:数据项
D:数据结构
答案: 【数据类型】
4、单选题:
算法的确定性是指 ( )
选项:
A:当输入数据非法时,算法也能作出反应或进行处理
B:在任何情况下,算法不会出现死循环
C:算法中的每一条指令必须有确切的含义
D:算法中没有逻辑错误
答案: 【算法中的每一条指令必须有确切的含义 】
第二章 单元测试
1、单选题:
线性表中的数据元素有一个前驱多个后继。
选项:
A:对
B:错
答案: 【错】
2、单选题:
用顺序结构存储,删除最后一个结点时,( )
选项:
A:会移动其它结点位置
B:一定不会移动其它结点位置
C:可能会移动其它结点位置
D:其它
答案: 【一定不会移动其它结点位置】
3、单选题:
链表中逻辑上相邻的元素的物理地址__________相邻。
选项:
A:必定
B:不一定
C:一定不
D:其它
答案: 【不一定 】
4、单选题:
1.假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归并成一个按元素值递减有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原表(即A表和B表)的结点空间构造C表。
//将合并逆置后的结果放在C表中,并删除B表
StatusListMergeOppose_L(LinkList &A,LinkList &B,LinkList &C)
{
LinkList pa,pb,qa,qb;
pa=A;
pb=B;
qa=pa; //保存pa的前驱指针
qb=pb; //保存pb的前驱指针
pa=pa->next;
pb=pb->next;
A->next=NULL;
C=A;
while(pa&&pb){
if(pa->data<pb->data){
qa=pa;
pa=pa->next;
qa->next=A->next; //将当前最小结点插入A表表头
A->next=qa;
}
else{
qb=pb;
pb=pb->next;
( )//将当前最小结点插入B表表头
A->next=qb;
}
}
while(pa){
qa=pa;
pa=pa->next;
qa->next=A->next;
A->next=qa;
}
while(pb){
qb=pb;
pb=pb->next;
qb->next=A->next;
A->next=qb;
}
pb=B;
free(pb);
return OK;
}
选项:
A:qa->next=A->next
B:qb->next=A->next
C:qa->next=A;
D:qb->next=A;
答案: 【qb->next=A->next】
5、单选题:
假设某个单向循环链表的长度大于1,且表中既无头结点也无头指针。已知s为指向链表中某个结点的指针,试编写算法在链表中删除指针s所指结点的前驱结点。
StatusListDelete_CL(LinkList &S)
{
LinkList p,q;
if(S==S->next)return ERROR;
q=S;
p=S->next;
while( ){
q=p;
p=p->next;
}
q->next=p->next;
free(p);
return OK;
}
选项:
A:p->next!=S
B:p->next==S
C:p!=S
D:p==S
答案: 【p->next!=S】