数据结构-线性表-习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

线性表

一、选择题

1.线性表是( A )

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

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

2.一维数组与线性表的特征是( C )。

A.前者长度固定,后者长度可变B.两者长度均固定

C.后者长度固定,前者长度可变D.两者长度均可变

3.用单链表方式存储的线性表,存储每个结点需要两个域,一个数据域,另一个是( B ).

A.当前结点所在地址域B.指针域

C.空指针域D.空闲域

4.用链表表示线性表的优点是( B )。

A.便于随机存取

B.便于进行插入和删除操作

C.占用的存储空间较顺序表少

D.元素的物理顺序与逻辑顺序相同

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

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

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

C.删除开始结点

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

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

A.线性表采用顺序存储必须占用一片连续的存储单元

B.线性表采用顺序存储便于进行插入和删除操作

C.线性表采用链式存储不必占用一片连续的存储单元

D.线性表采用链式存储便于进行插入和删除操作

7.已知单链表的每个结点包括一个指针域next,它指向该结点的后继结点。现要将指针 q 指向的新结点插入到指针 p 指

向的结点之后,下面的操作序列中正确的是( C )。

A . q = p->next; p->next = q->next ;

B . p->next = q->next; q = p->next ;

C . q->next = p->next; p->next = q ;

D . p->next = q; q->next = p->next ;

8.设 a

l ,a

2

, a

3

为三个结点; p , 10 , 20 代表地址,则如下的链表存储结构称为( B )。

A.链表B.单链表C.双向循环链表D.双向链表

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

A.大于 1 B.等于1 C.小于1 D.不能确定

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

A. al+(i-1)*m

B. al+i*m

C. al-i*m

D. al+(i+1)*m

11.在 n 个结点的顺序表中,算法的时间复杂度是 O(l)的操作是( A )。

A.访问第i个结点(1≤i≤n)和求第 i 个结点的直接前驱(2≤i≤n)

B.在第 i 个结点之后插入一个新结点(1≤i≤n-1)

C.删除第 i 个结点( 1≤i≤n )

D.将 n 个结点从小到大排序

12.在线性表中( B )只有一个直接前驱和一个直接后继。

A.首元素B.中间元素

C.尾元素D.所有元素

13.对具有 n 个结点的线性表进行查找运算,所需的算法时间复杂度为( D )。

A. 0 (n2)

B. 0 (nlog

2n) C. O (log

2

n) D. O (n)

14.线性表采用顺序存储的缺点是( D )。

A.存储密度降低B.只能顺序访问

C.元素的逻辑顺序与物理顺序不一致

D.插入、删除操作效率低

15.以下链表结构中,从当前结点出发能够访问到任一结点的是( B )。

A.单向链表和双向链表B.双向链表和循环链表

C.单向链表和循环链表

D.单向链表、双向链表和循环链表

16.线性表是具有 n 个( B )的有限序列。

A.数据项B.数据元素C.表元素D.字符

17.若长度为 n 的线性表采用链式存储结构,访问其第 i 个元素的算法时间复杂度为( B )。

A. 0 ( l )

B. 0 ( n )

C. 0 ( n2 )

D. 0 ( log

2

n )

18.指针 P 指向循环链表 L 的首元素的条件是( A )。

A. P==L

B. L->next==P

C.P->next= =NULL

D. P->next==L

19.指针 P 所指的元素是双循环链表 L 的尾元素的条件是( D )。

A. P==L

B. P->prior==L

C. P==NULL

D. P->next==L

20.不带头结点的单链表L为空的条件是( C )

A. L!=NULL

B. L==NULL

C. L->next==NULL

D. L->next==L

21.带头结点的单链表L为空的条件是( D )

A. L!=NULL

B. L==NULL

C. L->next==NULL

D. L->next==L

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

A. P->next==Q->next

B. P->next==Q

C. Q->next==P

D. P==Q

23.在长度为 n 的顺序表中,若要删除第 i (1≤i≤n )个元素,则需要向前移动元素的次数为( B )。

A. 1

B. n一i

C. n一i+1

D. n一i一l

24.在长度为 n 的顺序表中第 i (1≤i≤n)个位置上插入一个元素时,为留出插入位置所需移动元素的次数为( C )。

A. n-i

B. i

C. n–i+1

D. n-i-l

25.假定己建立以下动态链表结构,且指针 Pl 和 P2 已指向如图所示的结点:则以下可以将 P2 所指结点从链表中删除并

释放该结点的语句组是( C )

A. pl->next=p2->next; free (pl);

B. pl=p2; free (p2);

C. pl->next=p2->next;free (p2);

D. pl=p2->next; free (p2);

26.若已建立如图所示的单向链表,则以下不能将 s 所指的结点插入到链表尾部,构成新的单向链表的语句组是( D )。

相关文档
最新文档