习题二-线性表

1.线性表( a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂度为( )


A、O(i)

B、O(1)

C、O(n)

D、O(i-1)


正确答案:C


2.静态链表中指针表示的是( )


A、内存地址

B、数组下标

C、下一元素地址

D、左、右孩子地址


正确答案:B


3.以下说法错误的是 ( )


A、对于线性表来说,定位运算LocateElem在顺序表和单链表上的时间复杂度均为O(n)

B、读表元运算在顺序表上只需常数时间O(1)便可实现,因此顺序表是一种随机存取结构

C、在链表上实现读表元运算的平均时间复杂度为O(1)

D、插入、删除操作在链表上的实现可在O(1)时间内完成

E、插入、删除操作在顺序表上的实现,平均时间复杂度为O(n)


正确答案:C


4.对于顺序表,以下说法错误的是( )


A、顺序表是用一维数组实现的线性表,数组的下标可以看成是元素的绝对地址

B、顺序表的所有存储结点按相应数据元素间的逻辑关系决定的次序依次排列

C、顺序表的特点是:逻辑结构中相邻的结点在存储结构中仍相邻

D、顺序表的特点是:逻辑上相邻的元素,存储在物理位置也相邻的单元中


正确答案:A


5.线性表是具有n个( )的有限序列(n>0)


A、表元素

B、字符

C、数据元素

D、数据项

E、信息项


正确答案:C


6.在循环链表中,将头指针改设为尾指针(rear)后,其头结点和尾结点的存储位置分别是( )


A、rear和rear->next->next

B、rear->next 和rear

C、rear->next->next和rear

D、rear和rear->next


正确答案:B


7.在单链表指针为p的结点之后插入指针为s的结点,正确的操作是:( )


A、p->next=s;s->next=p->next

B、s->next=p->next;p->next=s

C、p->next=s;p->next=s->next

D、p->next=s->next;p->next=s


正确答案:B


8.对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为( )


A、O(n) O(n)

B、O(n) O(1)

C、O(1) O(n)

D、O(1) O(1)


正确答案:C


9.若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用( )存储方式最节省时间


A、顺序表

B、单链表

C、双链表

D、单循环链表


正确答案:A


10.链表不具有的特点是( )


A、插入、删除不需要移动元素

B、可随机访问任一元素

C、不必事先估计存储空间

D、所需空间与线性长度成正比


正确答案:B


11.对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是( )

A、head==NULL

B、head→next==NULL

C、head→next==head

D、head!=NULL


我的答案:B


12.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间


A、单链表

B、单循环链表

C、带尾指针的单循环链表

D、带头结点的双循环链表


我的答案:D


13.顺序表是线性表的( )


A、链式存储结构

B、顺序存储结构

C、索引存储结构

D、散列存储结构


我的答案:B


14.线性表L=(a1,a2,…,an)用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是________。


我的答案:

第一空: 

(n-1)/2


15.在单链表中若在每个结点中增加一个指针域,所含指针指向前驱结点,这样构成的链表中有两个方向不同的链,称为______。


我的答案:

第一空: 

双向链表



你可能感兴趣的:(习题二-线性表)