选择题

1. 下述哪一条是顺序存储结构的优点? A
A.存储密度大 B.插入运算方便 C.删除运算方便 D.可方便地用于各种逻辑结构的存储表示
2. 下面关于线性表的叙述中,错误的是哪一个? B
A.线性表采用顺序存储,必须占用一片连续的存储单元。
B.线性表采用顺序存储,便于进行插入和删除操作。
C.线性表采用链接存储,不必占用一片连续的存储单元。
D.线性表采用链接存储,便于插入和删除操作。
3. 线性表是具有 n 个( )的有限序列(n>0)。 C
A.表元素 B.字符 C.数据元素 D.数据项
4.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。 A
A.顺序表 B.双链表 C.带头结点的双循环链表 D.单循环链表
5.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。 D
A.单链表 B.仅有头指针的单循环链表 C.双链表 D.仅有尾指针的单循环链表
6. 设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。 D
A. 单链表 B.单循环链表 C. 带尾指针的单循环链表 D.带头结点的双循环链表
7.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用( )存储方式最节省运算时间。 D
A.单链表 B.双链表 C.单循环链表 D.带头结点的双循环链表
8. 链表不具有的特点是( ) B
A.插入、删除不需要移动元素 B.可随机访问任一元素
C.不必事先估计存储空间 D.所需空间与线性长度成正比
9. 若长度为 n 的线性表采用顺序存储结构,在其第 i 个位置插入一个新元素的算法的时间复杂度为( )(1<=i<=n+1) C
A. O(0) B. O(1) C. O(n) D. O(n 2 )
10. 对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为( ) C
A.O(n) O(n) B. O(n) O(1) C. O(1) O(n) D. O(1) O(1)
11. 线性表( a1,a2,…,an)以链接方式存储时,访问第 i 位置元素的时间复杂性为( ) C
A.O(i) B.O(1) C.O(n) D.O(i-1)
12. 非空的循环单链表 head 的尾结点 p↑满足( ) A
A.p->link=head B.p->link=NULL C.p=NULL D.p= head
13. 在一个以 h 为头的单循环链中,p 指针指向链尾的条件是() A
A. p->next=h      B. p->next=NULL
C. p->next->next=h    D. p->data=-1
14.在单链表指针为 p 的结点之后插入指针为 s 的结点,正确的操作是:( ) B
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;
15. 对于一个头指针为 head 的带头结点的单链表,判定该表为空表的条件是( ) B
A.head == NULL    B.head→next==NULL
C.head→next==head  D.head!=NULL
16. 在双向链表指针 p 的结点前插入一个指针 q 的结点操作是( ) C
A. p->Llink=q; q->Rlink=p; p->Llink->Rlink=q; q->Llink=q;
B. p->Llink=q; p->Llink->Rlink=q; q->Rlink=p; q->Llink=p->Llink;
C. q->Rlink=p; q->Llink=p->Llink; p->Llink->Rlink=q; p->Llink=q;
D. q->Llink=p->Llink; q->Rlink=q; p->Llink=q; p->Llink=q;
17. 在双向链表存储结构中,删除 p 所指的结点时须修改指针( ) A
A. (p->llink)->rlink:=p->rlink (p->rlink)->llink:=p->llink;
B. p->llink:=(p->llink)->llink (p->llink)->rlink:=p;
C. (p->rlink)->llink:=p p->rlink:=(p->rlink)->rlink;
D. p->rlink:=(p->llink)->llink p->llink:=(p->rlink)->rlink;