问题 单项选择题

双链表的每个结点包括两个指针域。其中rlink指向结点的后继,llink指向结点的前驱。 如果要在p所指结点前面插入q所指的新结点,下面操作序列正确的是______。

A.p↑.rlink↑.llink:=q; p↑.rlink:=q; q↑.llink:=p; q↑.rlink:= p↑.rlink;

B.p↑.llink↑.rlink:=q; p↑.llink:=q; q↑.rlink:=p; q↑.llink:= p↑.llink;

C.q↑.llink:= p; q↑.rlink:= p↑.rlink; p↑.rlink↑.llink:=q; p↑.rlink:=q;

D.q↑.rlink:=p; q↑.llink:= p↑.llink; p↑.llink↑.rlink:=q; p↑.llink:=q;

答案

参考答案:D

解析:在双单向链表P结点前插入q结点运算的关键步骤为:q↑.rlink:=p; q↑.llink:= p↑.llink; p↑.llink ↑.rlink:=q; p↑.llink:=q;。

单项选择题 案例分析题
单项选择题