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

题目
在双向循环链表中,在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: p->llink=q; 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;

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

双向链表中有两个指针域,llink和rlink分别指向前趋及后继,设p指向链表中的一个结点,在p结点前插入一个结点q的操作是()

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=q;p->Llink=q;p->Llink=q;


D

第2题:

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


答案:D
解析:
p→llink→rlink=q;q→rlink=p;q→llink=p→llink;p→llink=q

第3题:

在双向循环链表中,在P指针所指向的结点前插入一个指针q所指向的新结点,其修改指针的操作是(55)。

A.P->llink=q;q->rlink=p;P->llink->rlink=q;q->llink=p;

B.P->llink=q;P->llink->rlink=q;q->rlink=p;q->llink=p->llink;

C.q->rlink=p;q->liink=p->llink;P->llink->rlink=q;P->llink=q;

D.q->llink=p->llink;q->rlink=p;P->llink=q;P->rlink=q;


正确答案:C
解析:这里应是先将;的左右指针设定,即q的左指针赋为p的左指针,q的右指针赋为p,这两步可以互换;然后将p的左指针指向的结点的右指针赋为q;最后将p的左指针赋为qo所以应选Co

第4题:

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

第5题:

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


正确答案:C
设p所指结点为A,q所指结点为B,将A结点的右指针指向B结点,B结点的左指针指向A结点,右指针指向A结点原来的下一结点(设为C),C结点左指针指向B结点。

第6题:

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

A) q↑.rlink:=p; q↑.llink:=p↑.llink; p↑.rlink↑.rlink:=q; p↑.11ink:=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↑.rlink;


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

第7题:

假设双链表结点的类型如下: Typedef struct linknode {int data; /*数据域*/ struct linknode *llink; /*llink是指向前驱结点的指针域*/ struct linknode *rlink; /*rlink是指向后续结点的指针域*/ }bnode 下面给出的算法段是要把一个q所指的新结点作为非空双向链表中的p所指结点的前驱结点插入到该双链表中,能正确完成要求的算法段是(32)。

A.q->rlink=p;q->llink=p->llink;p->llink=q;p->llink->rlink=q;

B.p->llink=q;q->rlink=p;p->llink->rlink=q:q->llink=p->llink;

C.q->llink=p->llink:q->rlink=p;p->llink->rlink=q;p->llink=q;

D.以上都不对


正确答案:C
解析:本题考查链表的操作问题。在链表中插入一个结点时,首先需要确定插入的位置,题目中是插入在p结点前面,因此,需要把插入结点q的rlink指向p,q的llink指向p的llink。然后,需要把p的llink指向q,p的前驱结点的rlink也指向q。

第8题:

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


正确答案:C

(11)【答案】C)
【解析】在P结点后插入q指针所指结点,插入的顺序1---2---3---4,如图所示;

第9题:

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