大学MOOC 数据结构(江苏电子信息职业学院)1003510012 最新慕课完整章节测试答案
第1章 绪论与C语言介绍
文章目录
测验1
1、单选题:
下列算法的时间复杂度是( )。for(i=1;i<=n;i++) c[i]=i;
选项:
A: O(1)
B: O(n)
C: O(
)
D: O(
)
答案: 【 O(n)】
2、判断题:
数据结构研究的主要内容包括逻辑结构、存储结构和数据之间的运算。
选项:
A: 正确
B: 错误
答案: 【 正确】
3、判断题:
沃思(N.Wirth)教授曾提出:程序+数据结构=算法。
选项:
A: 正确
B: 错误
答案: 【 错误】
4、填空题:
数据的逻辑结构包括()和非线性结构两大类。
答案: 【 线性结构】
第2章 线性表的结构分析与应用
测验1
1、单选题:
下列有关线性表的叙述中,正确的是( )。
选项:
A: 线性表中的元素之间是线性关系
B: 线性表中至少有一个元素
C: 线性表中任何一个元素有且仅有一个直接前趋
D: 线性表中任何一个元素有且仅有一个直接后继
答案: 【 线性表中的元素之间是线性关系】
2、单选题:
已知线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态。( )void f30(SeqList *L){ int i,j; for (i=j=0;i<L->length; i++) if(L->data[i]>=0) { if(i!=j) L->data[j]=L->data[i]; j++;} L->length=j; }
选项:
A: L=(-7,-8,0,-11,-10)
B: L=(21,19,34,30)
C: L=(21,19,0,34,30)
D: L=(-7,-8,-11,-10)
答案: 【 L=(21,19,0,34,30)】
3、填空题:
线性表a的数据元素的长度为2,在顺序存储结构下LOC(a0) =100,则LOC(a5) =()。
答案: 【 110】
4、填空题:
在一个长度为n的顺序表中第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动()个元素。
答案: 【 n-i+1##%_YZPRLFH_%##n-1+i】
测验2
1、单选题:
在单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行( )。
选项:
A: s->next=p->next; p->next=s;
B: p->next=s->next; s->next=p;
C: p->next=p; p->next=s;
D: p->next=s; p->next=s;
答案: 【 s->next=p->next; p->next=s;】
2、单选题:
删除下图单链表中的q结点,执行的两条语句是什么?
![]()
选项:
A: p->next=q; free(q);
B: p->next=q->next; free(q);
C: p=q->next; free(q);
D: p=q; free(q);
答案: 【 p->next=q->next; free(q);】
3、判断题:
顺序表适合插入和删除运算,单链表适合查找运算。( )
选项:
A: 正确
B: 错误
答案: 【 错误】
第3章 栈和队列的结构分析与应用
栈和队列单元作业
1、单选题:
假设以S和X分别表示进栈和出栈操作,则对输入序列a,b,c,d,e进行一系列栈操作SSXSXSSXXX之后,得到的输出序列为()。
选项:
A: baced
B: bceda
C: edcba
D: cbaed
答案: 【 bceda】
2、单选题:
设数组Data[n]作为循环队列Q的存储空间,front为队头指针,rear为队尾指针,则执行入队操作的语句为( )。
选项:
A: Q->rear=(Q->rear+1)%(n+1)
B: Q->front=(Q->front+1)% n
C: Q->rear=(Q->rear+1)% n
D: Q->front=(Q->front+1)%(n+1)
答案: 【 Q->rear=(Q->rear+1)% n】
3、单选题:
栈和队列的共同点在于()。
选项:
A: 都对存储方法作了限制
B: 都是只能进行插入、删除运算
C: 都对插入、删除的位置作了限制
D: 都对插入、删除两种操作的先后顺序作了限制
答案: 【 都对插入、删除的位置作了限制】
4、判断题:
栈的操作原则是先进先出或者后进后出。( )
选项:
A: 正确
B: 错误
答案: 【 错误】
5、判断题:
顺序栈执行进栈操作之前要判断栈是否为空。( )
选项:
A: 正确
B: 错误
答案: 【 错误】
6、填空题:
设栈S和队列Q的初始状态皆为空,元素a1,a2,a3,a4,a5和a6依次通过一个栈,一个元素出栈后即进入队列Q,若6个元素出队列的顺序是a3,a5,a4,a6,a2,a1则栈S至少应该容纳( )个元素。
答案: 【 4】
7、填空题:
循环队列用数组A[0,7]存放其元素值,已知其头尾位置分别是front=6和rear=2,其中front为队头元素的位置,rear为队尾元素的下一个空闲位置,则当前队列中的元素个数是( )。
答案: 【 4】
栈的测验1
1、单选题:
顺序栈中变量top是记录( )元素位置。
选项:
A: 最底端
B: 最顶端
C: 最中间
D: 不确定
答案: 【 最顶端】
2、判断题:
数据元素1,2,3顺序进栈,允许任意出栈,出栈可以得到6种序列。
选项:
A: 正确
B: 错误
答案: 【 错误】
3、判断题:
栈的操作原则是先进后出或者后进先出。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
顺序栈采用一维数组存储。
选项:
A: 正确
B: 错误
答案: 【 正确】
栈的测验2
1、单选题:
链栈与顺序栈相比,比较明显的优点是()。
选项:
A: 插入操作更加方便
B: 删除操作更加方便
C: 不会出现下溢情况
D: 不会出现上溢情况
答案: 【 不会出现上溢情况】
2、单选题:
下列哪个选项可以实现链栈进栈操作( )。
选项:
A: p->next=*top;*top=p;
B: p=*top;*top=p;
C: p->next=*top;top=p;
D: p->next=top;*top=p;
答案: 【 p->next=*top;*top=p;】
队列测验1
1、单选题:
顺序循环队列共8个向量空间,如果队头front位置为6,队尾rear位置为3,那么队列中一共有()个元素。
选项:
A: 3
B: 4
C: 5
D: 6
答案: 【 5】
2、判断题:
队列的操作原则是先进后出或者后进先出。
选项:
A: 正确
B: 错误
答案: 【 错误】
队列测验2
1、单选题:
链队列Q的头指针为front,尾指针为rear,下面哪个选项可以完成链队列的出队操作()。
选项:
A: p->Q->front;Q->front=p;free(p);
B: p->Q->front;Q=p->next;free(p);
C: p->Q->front;Q->front=p->next;free(p);
D: p->Q->rear;Q->front=p->next;free(p);
答案: 【 p->Q->front;Q->front=p->next;free(p);】
2、判断题:
链队列进队操作,不存在出现上溢情况。()
选项:
A: 正确
B: 错误
答案: 【 正确】
第4章 字符串的结构分析与应用
测验1
1、单选题:
执行result=strcmp("that","this");之后,result的结果为()。
选项:
A: -1
B: 0
C: 1
D: 2
答案: 【
