题目内容

完成在双循环链表结点p之后插入s的操作是( )。

A. p^.next:=s ; s^.priou:=p; p^.next^.priou:=s ; s^.next:=p^.next;
B. p^.next^.priou:=s; p^.next:=s; s^.priou:=p; s^.next:=p^.next;
C. s^.priou:=p; s^.next:=p^.next; p^.next:=s; p^.next^.priou:=s ;
D. s^.priou:=p; s^.next:=p^.next; p^.next^.priou:=s ; p^.next:=s;

查看答案
更多问题

在双向循环链表中,在p指针所指向的结点前插入一个指针q所指向的新结点,其修改指针的操作是( )。注:双向链表的结点结构为(llink,data,rlink)。 供选择的答案:

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:=p; p↑.llink:=q;p↑.llink:=q;

在非空双向循环链表中q所指的结点前插入一个由p所指的链结点的过程依次为:rlink(p) ← q; llink(p) ← llink(q); llink(q) ← p; ( )

A. rlink(q) ← p
B. rlink(llink(q)) ← p
C. rlink(llink(p)) ← p
D. rlink(rlink(p)) ← p

双向链表中有两个指针域,llink和rlink,分别指回前驱及后继,设p指向链表中的一个结点,q指向一待插入结点,现要求在p前插入q,则正确的插入为( )

A. p^.llink:=q; q^.rlink:=p; p^.llink^.rlink:=q; q^.llink:=p^.llink;
B. q^.llink:=p^.llink; p^.llink^.rlink:=q; q^.rlink:=p; p^.llink:=q^.rlink;
C. q^.rlink:=p; p^.rlink:=q; p^.llink^.rlink:=q; q^.rlink:=p;
D. p^.llink^.rlink:=q; q^.rlink:=p; q^.llink:=p^.llink; p^.llink:=q;

双向链表中有两个指针域,llink和rlink分别指向前趋及后继,设p指向链表中的一个结点,现要求删去p所指结点,则正确的删除是( )(链中结点数大于2,p不是第一个结点)

A. p^.llink^.rlink:=p^.llink; p^.llink^.rlink:=p^.rlink; dispose(p);
B. dispose(p); p^.llink^.rlink:=p^.llink; p^.llink^,rlink:=p^.rlink;
C. p^.llink^.rlink:=p^.llink; dispose(p); p^.llink^.rlink:=p^.rlink;
D. 以上A,B,C都不对。

答案查题题库