已知P结点是某双向链表的中间结点,试从下列提供的答案中选择合适

题目

已知P结点是某双向链表的中间结点,试从下列提供的答案中选择合适的语句序列。 a.在P结点后插入S结点的语句序列是()。 b.在P结点前插入S结点的语句序列是()。 c.删除P结点的直接后继结点的语句序列是()。 d.删除P结点的直接前驱结点的语句序列是()。 e.删除P结点的语句序列是()。 (1)P->next=P->next->next; (2)P->priou=P->priou->priou; (3)P->next=S; (4)P->priou=S; (5)S->next=P; (6)S->priou=P; (7)S->next=P->next; (8)S->priou=P->priou; (9)P->priou->next=P->next; (10)P->priou->next=P; (11)P->next->priou=P; (12)P->next->priou=S; (13)P->priou->next=S; (14)P->next->priou=P->priou; (15)Q=P->next; (16)Q=P->priou; (17)free(P); (18)free(Q);

参考答案和解析
正确答案: a.(7)(3)(6)(12)
b.(8)(4)(5)(13)
c.(15)(1)(11)(18)
d.(16)(2)(10)(18)
e.(14)(9)(17)
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

已知p指向双向循环链表中的一个结点,其结点结构为data、prior、next三个域,写出算法change(p),交换p所指向的结点和它的前缀结点的顺序。


参考答案:
  知道双向循环链表中的一个结点,与前驱交换涉及到四个结点(p结点,前驱结点,前驱的前驱结点,后继结点)六条链。
  [算法描述]
  void Exchange(LinkedList p)
  ∥p是双向循环链表中的一个结点,本算法将p所指结点与其前驱结点交换。
  {q=p->llink;
  q->llink->rlink=p; ∥p的前驱的前驱之后继为p
  p->llink=q->llink; ∥p的前驱指向其前驱的前驱。
  q->rlink=p->rlink; ∥p的前驱的后继为p的后继。
  q->llink=p; ∥p与其前驱交换
  p->rlink->llink=q; ∥p的后继的前驱指向原p的前驱
  p->rlink=q; ∥p的后继指向其原来的前驱
  }∥算法exchange结束。

第2题:

● 某双向链表中的结点如下图所示,删除 t 所指结点的操作为 (54) 。


正确答案:A

第3题:

已知指针p指向某单链表中的一个结点,则判别该结点有且仅有一个后继结点的条件是p-next-next==null。()

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


正确答案:正确

第4题:

线性表在存储后,如果相关操作中有要求:利用已知的指向某结点的指针或序号,访问该结点的前驱结点,则采用()的存储方式是不可行的。

  • A、单向链表
  • B、双向链表
  • C、单向循环链表
  • D、顺序表

正确答案:A

第5题:

在双向循环链表中,在p所指的结点之后插入指针f所指的新结点,其操作步骤是()。


答案:D
解析:
在双向循环链表中。在p所指的结点之后插入指针f所指的新结点的操作步骤为:改变f的前驱指针域,使其指向p;然后改变f的后继指针域,使其指向p的后继;接下来修改p的后继结点得前驱指针域,指向f,最后将f的地址付给p的后继指针。具体操作为:f—>pnor=p;f—>next=p—>next;p—>next—>prior=f;P—>next=f。

第6题:

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

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


标准答案:对

第7题:

若L是一个双向链表,P结点既不是首结点,也不是尾结点。在P结点前插入S结点的语句是(21)。

A.

B.

C.

D.


正确答案:C
解析:

第8题:

下列叙述中错误的是()。

A.在双向链表中,可以从任何一个结点开始直接遍历到所有结点

B.在循环链表中,可以从任何一个结点开始直接遍历到所有结点

C.在线性单链表中,可以从任何一个结点开始直接遍历到所有结点

D.在二叉链表中,可以从根结点开始遍历到所有结点


正确答案:C

第9题:

双向循环链表中,p指向表中某结点,则通过p可以访问到p所指结点的直接后继结点和直接前驱结点。

A

B



第10题:

设单链表的结点结构为(data,next)。已知指针p指向单链表中的结点,q指向新结点,欲将q插入到p结点之后,则需要执行的语句:();()。


正确答案:q->next=p->next,p->next=q

更多相关问题