第3章 链表及链式栈、链式队列--3

时间:2024-09-13 14:33:15 分类:信息学

3.3 链表习题

1、用单链表表示的链式队列的队头在链表的( )位置。

A. 链头 B. 链尾 C. 链中 D. 以上都不是

2、在双向循环链表中,在 p 所指的结点之后插入 s 指针所指的结点,其操作是( )。

A. p->next=s; s->prior=p;

p->next->prior=s; s->next=p->next;

B. s->prior=p; s->next=p->next;

p->next=s; p->next->prior=s;

C. p->next=s; p->next->prior=s;

s->prior=p; s->next=p->next;

D. s->prior=p; s->next=p->next;

p->next->prior=s; p->next=s;

3、向一个栈顶指针为 hs 的链栈中插入一个 s 结点时,应执行( )。

A.hs->next=s;

B.s->next=hs; hs=s;

C.s->next=hs->next; hs->next=s;

D.s->next=hs; hs=hs->next;

4、在一个链队列中,假定 front rear 分别为队首和队尾指针,则删除一个结点的操

作为( )。

A.front=front->next B.rear=rear->next

C.rear=front->next D.front=rear->next

5、用链接方式存储的队列,在进行删除运算时( )。

A. 仅修改头指针 B. 仅修改尾指针

C. 头、尾指针都要修改 D. 头、尾指针可能都要修改

6、设链式栈中结点的结构为(data,link),且 top 是指向栈顶的指针。若想在链式栈

的栈顶插入一个由指针 s 所指的结点,则应执行的操作是( )。

A.top->link=s;

B.s->link=top->link; top->link=s;

C.s->link=top; top=s;

D.s->link=top; top=top->link;

7、设链式栈中结点的结构为(data,link),且 top 是指向栈顶的指针。若想摘除链式

栈的栈顶结点,并将被摘除结点的值保存到 x 中,则应执行的操作是( )。

A.x=top->data; top=top->link;

B.top=top->link; x=top->data;

C.x=top; top=top->link;

D.x=top->data;

8、判断题

(1)链式栈通常会选用链表的表尾一段作为栈顶。( )

(2)链式栈与顺序栈相比, 一个明显的优点是通常不会出现栈满的情况。( )

参考答案:

1.A 2.D 3.B 4.A 5.D

6.C 7.A 8.(1)错 (2)对