第二章线性表

线性表测试

1、单选题:
‎线性表中(    )称为线性表的长度。‌
选项:
A: 元素的长度
B: 数据项的数目
C: 数据的长度
D: 元素的个数
答案: 【 元素的个数

2、单选题:
​在下列关于线性表的叙述中,错误的是()​
选项:
A: 采用顺序存储的线性表,必须占用一片连续的存储单元
B: 采用顺序存储的线性表,便于进行插入和删除操作
C: 采用链式存储的线性表,不必占用一片连续的存储单元
D: 采用链式存储的线性表,便于进行插入和删除操作
答案: 【 采用顺序存储的线性表,便于进行插入和删除操作

3、单选题:
‎设顺序表的每个元素占8个存储单元。第1个单元的存储地址是100,则第6个元素占用的最后一个存储单元的地址为(    )​
选项:
A: 139
B: 140
C: 147
D: 148
答案: 【 147

4、单选题:
‍在一个表头指针为ph的单链表中,若要在指针q所指结点的后面插入一个由指针p所指向的结点,则执行(      )操作​
选项:
A: q->next=p->next; p->next=q; 
B: p->next=q->next; q=p;
C: q->next=p->next; p->next=q;
D: p->next=q->next; q->next=p;
答案: 【 p->next=q->next; q->next=p;

5、单选题:
‎设顺序表的长度为n,并设从表中删除元素的概率相等。则在平均情况下,从表中删除一个元素需移动的元素个数是(   )‌
选项:
A: (n-1)/2
B: n/2
C: n(n-1)/2
D: n(n+1)/2
答案: 【 (n-1)/2

6、单选题:
‌在线性链表存储结构下,插入操作算法(      )​
选项:
A: 需要判断是否表满
B: 需要判断是否表空
C: 不需要判断表满
D: 需要判断是否表空和表满
答案: 【 不需要判断表满

7、单选题:
‌若某链表最常用的操作是在最后一个结点之后插入一个元素和删除最后一个元素,则采用(       )存储方式最节省运算时间‏
选项:
A: 单链表
B: 双向链表
C: 单循环链表
D: 顺序表
答案: 【 顺序表

8、单选题:
‎设有一个二维数组A[m][n],假设A[0][0]存放位置在644,A[2][2]存放位置在676,每个元素占一个空间,问A[3][3]的存储位置是(      )‌
选项:
A: 688
B: 678
C: 692
D: 696
答案: 【 692

9、单选题:
‎已知两个长度分别为m和n的升序链表,若将它们合并为一个长度为m+n的降序链表,则最坏情况下的时间复杂度是(     )‎
选项:
A: ○(n)
B: ○(m*n) 
C: ○(min(m,n)) 
D: ○(max(m,n))
答案: 【 ○(max(m,n))

10、单选题:
‍在一个长度为n的顺序存储结构的线性表中,向第i个元素(1≤i≤n+1)位置插入一个元素时,需要后移(       )个元素​
选项:
A: n-i
B: n-i+l
C: n-i-l
D: i
答案: 【 n-i+l

11、填空题:
‌线性数据结构的逻辑特征是有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个(     )和一个直接后继‌
答案: 【 直接前驱

12、填空题:
​当对一个线性表经常进行存取操作,而很少进行插入和删除操作时,则采用_______存储结构为宜。‎
答案: 【 顺序

13、填空题:
‌已知一个指针p指向非空不带头单链表的某一个结点,若p满足条件”p->next==NULL”,则p指向单链表的(   )结点。​
答案: 【 最后一个##%_YZPRLFH_%##尾

14、填空题:
‎访问一个顺序表中第i个元素的时间复杂度分别是(    )‎
答案: 【 O(1)

15、填空题:
​一种数据结构的元素集合K和它的二元关系R为:K={a,b,c,d,e,f,g,h},R={<a,b>,<b,c>,<c,d>,<d,e>,<e,f>,<f,g>,<g,h>}。则该数据结构是一种(     )结构‍
答案: 【 线性

第三章栈和队列

栈和队列单元测试

1、单选题:
​一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是()​
选项:
A: edcba
B: decba
C: dceab
D: abcde
答案: 【

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注