数据结构习题解答线性表选择题

1.线性表是(A)。

A.一个有限序列,可以为空

B.一个有限序列,不能为空

C.一个无限序列,可以为空

D.一个无限序列,不能为空

2.顺序表便于(D)。

A.插入结点

B.按值查找结点

C.删除结点

D.按序号查找结点

3.已知一个顺序存储的线性表,设每个结点占m个存储单元,若第一个结点的地址为B,则第i个结点的地址为(A)。

A.B+(i-1)*m

B.B+i*m

C.B-i*m

D.B+(i+1)*m

4.下面关于线性表的叙述中,错误的是(D)。

A.顺序表必须占一片地址连续的存储单元

B.顺序表可以随机存取任一元素

C.链表不必占用一片地址连续的存储单元

D.链表可以随机存取任一元素

5.在有n个结点的顺序表上做插入、删除结点运算的时间复杂度为(B)。

A.O(1)

B.O(n)

C.O(n2)

D.O(log2n)

6.设a、b、c为3个结点,p、10、20分别代表它们的地址,则如下的存储结构称为(B)。

A.循环链表

B.单向链表

C.双向循环链表

D.双向链表

7.在具有n个结点的单向链表中,实现(A)的操作,其算法的时间复杂度是O(n)。

A.遍历链表或求链表的第i个结点

B.在地址为P的结点之后插入一个结点

C.删除开始结点

D.删除地址为P的结点的后继结点

8.单向链表的存储密度(C)。

A.大于1

B.等于1

C.小于1

D.不能确定

9.L是线性表,已知LngthList(L)的值是5,经DlList(L,2)运算后,LngthList(L)的值是(C)。

A.2

B.3

C.4

D.5

10.设front、rar分别为循环双向链表结点的左指针和右指针,则指针P所指的元素是双循环链表L的尾元素的条件是(D)。

A.P==L

B.P-front==L

C.P==NULL

D.P-rar==L

11.两个指针P和Q,分别指向单向链表的两个元素,P所指元素是Q所指元素前驱的条件是(B)。

A.P-nxt==Q-nxt

B.P-nxt==Q

C.Q-nxt==P

D.P==Q

12.在一个单向链表中,已知Q所指的结点是P所指结点的前驱结点,若在Q和P之间插入S结点,执行(C)操作。

A.S-nxt=P-nxt;P-nxt=S;

B.P-nxt=S-nxt;S-nxt=P;

C.Q-nxt==S;S-nxt=P;

D.P-nxt=S;S-nxt=Q;

13.单向链表的示意图如下:

指向链表B结点的前驱的指针是(B)。

A.L

B.P

C.Q

D.R

14.设p为指向单循环链表上某结点的指针,则*p的直接前驱(C)。

A.找不到

B.查找时间复杂度为O(1)

C.查找时间复杂度为O(n)

D.查找结点的次数约为n

15.已知单链表A的长度为m,B的长度为n,若将B链接到A的末尾,在没有链尾指针的情况下,算法的时间复杂度应为(B)。

A.O(1)

B.O(m)

C.O(n)

D.O(m+n)

16.等概率情况下,在有n个结点的顺序表上做插入结点运算,需平均移动结点的数目为(C)。

A.n

B.(n-1)/2

C.n/2

D.(n+1)/2

17.在下列链表中不能从当前结点出发访问到其余各结点的是(C)。

A.双向链表

B.单循环链表

C.单向链表

D.双向循环链表

18.在顺序表中,只要知道(D),就可以求出任一结点的存储地址。

A.基地址

B.结点大小

C.向量大小

D.基地址和结点大小

19.以下关于线性表的论述,不正确的为(C)。

A.线性表中的元素可以是数字、字符、记录等不同数据类型

B.线性顺序表中包含的元素个数不是任意的

C.线性表中的每个结点都有且仅有一个直接前驱和一个直接后继

D.存在这样的线性表,即表中没有任何结点

20.设带头结点的单循环链表的头指针为had,指针变量P指向尾结点的条件是(B)

A.P-nxt-nxt==had

B.P-nxt==had

C.P-nxt-nxt==NULL

D.P-nxt==NULL

题目来源:《实用数据结构基础》第四版

jsr

扫一扫下载订阅号助手,用手机发文章赞赏

长按







































北京治疗白癜风需要多少费用
北京治疗白癜风需要多少费用



转载请注明:http://www.92nongye.com/hxjs/204621620.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了