问题 单项选择题

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

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

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

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

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

答案

参考答案:B

解析:在双链表中,如果要在p所指结点后插入q所指的新结点,只需修改p所指结点的rlink字段和原后继的llink字段,并置q所指结点的llink和rlink值。即q↑.llink:=p;q↑.rlink:=p↑.rlink;p↑.rlink↑.llink:=q;p↑.rlink:=q。

单项选择题
单项选择题