在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p

题目

在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入一个结点s,则执行()。

  • A、s->next=p->next;p->next=s;
  • B、p->next=s->next;s->next=p;
  • C、q->next=s;s->next=p;
  • D、p->next=s;s->next=q;
参考答案和解析
正确答案:C
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句( )。

A、p->next=q->next

B、q->next=NULL

C、p->next=q

D、p=q->next


标准答案:A

第2题:

设线性链表中结点的结构为(data,next)。已知指针q所指结点是指针结点p的直接前驱,若在*q与*p之间插入结点*s,则应执行下列()操作。

A.s->next=p->next;p->next=s;

B.q->next=s;s->next=p;

C.p->next=s->next;s->next=p;

D.p->next=s;s->next=q;


正确答案:B

第3题:

在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行( )。

A.s→link=p→link; p→link=s

B.p→qink=s; s→qink=q

C.p→qink=s→link; s→link=p

D.q→link=s; s→link=p


正确答案:D
解析:在单链表中插入一个元素需要执行以下步骤:首先将待插入节点的前驱结点的指针域指向待插入节点,然后将待插入节点的指针域指向待插入节点的前驱结点原先的后继节点。

第4题:

在一个单链表中删除p所指结点的后继结点时,应执行以下操作:q=p->next;p->next=();


正确答案:q->next

第5题:

设单链表中结点的结构为(dara,link)。已知指针q所指结点是指针p所指结点的直接前驱,若在*q与*p之间插入结点*s,则应执行下列哪一个操作?

A.s↑.link:=p↑.link;p↑.link:=s

B.q↑.link:=s;s↑.link:=p

C.p↑.link:=s↑.link;s↑.link:=p

D.p↑.link:=s;s↑.link:=q


正确答案:B
解析:在单链表中两个节点之间插入一个新结点,耍把前面结点的指针域指向新插入的结点(q↑.link=s),把新插入的结点的指针域指向后面的结点(s↑.link=p)。

第6题:

要在一个单向链表中删除p所指向的结点,已知q指向p所指结点的直接前驱结点,若链表中结点的指针域为next,则可执行q->next= p->next。()

此题为判断题(对,错)。


标准答案:对

第7题:

在一个单链表中,q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行(29)。

A.s→link=p→link;p→link=s;

B.p→link=s;s→link=q;

C.p→link=s→link;s→link=p;

D.q→link=s;s→link=p;


正确答案:D
解析:q结点是p结点的前驱结点,若在q与p之间插入结点s,只需先将q的指针指向s,然后再将s指向p即可。

第8题:

在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用的语句是()。

A.p=q->next

B.p->next=q

C. p->next=q->next

D.q->next=NULL


参考答案C

第9题:

在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。

Ap->next=q->next

Bp=q->next

Cq->next=NULL

Dp->next=q


A

第10题:

在非空线性链表中由p所指的结点后面插入一个由q所指的结点的过程是依次执行语句:link(q)←link(p);link(p)←q。


正确答案:正确

更多相关问题