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

admin2009-02-19  27

问题 双链表的每个结点包括两个指针域。其中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;

答案8

解析 如果在链表的每个结点中包括两个指针域,其中rlink指向结点的后继,llink指向结点的前驱,就可以方便地进行向后和向前两个方向的查找。这样的链表称作双链表。在双链表中,如果要在P所指结点前插入q所指的新结点,只需要修改P所指结点的 llink字段,并置q所指结点的llink和rlink。即q↑.rlink:=p; q↑.llink:=p↑.llink;p↑.llink↑.rlink:=q;p↑.llink:=q。
转载请注明原文地址:https://jikaoti.com/ti/l0Q7FFFM
0

相关试题推荐
最新回复(0)