设单链表中结点结构为(data,link).若想摘除结点*p的直

题目

设单链表中结点结构为(data,link).若想摘除结点*p的直接后继,则应执行下列哪一个操作()

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

第1题:

单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针P指向的单链表结点之后,下面的操作序列中正确的是( )

A)q;=p↑.link;p↑.link:=q↑,link;

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

C)q↑.link::p↑.link;P↑.link:=q;

D)P↑.link:=q;q↑.link:=p↑.link;


正确答案:C
由单链表的存储结构可知,每个结点的指针域保存其后继结点的指针。将指针为q的新结点插入到指针为P的结点之后,则原指针为P的结点的后继结点成为新结点的后继结点,由单链表的存储结构可知应执行q↑.link:=p↑.link,新结点成为指针P的后继结点,因此应执行p↑.link:=q,综上所述,选项C)是正确的。 

第2题:

设线性链表中结点的结构为(data,next)。若想删除结点p的直接后继,则应执行下列()操作。

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

B.p=p->nextp->next=p->next->next;

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

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


正确答案:A

第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所指结点不是尾结点,若在*p之后插入结点*s,则应执行下列哪一个操作______。

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

B.s->link=p->link;p->link=s;

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

D.p->link=s;s->link=p;


正确答案:B

第5题:

单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现将从单链表中删除指针p所指的下一结点。下面的操作序列中哪一个是正确的?

A.q:=p^.1ink;p^.link:=q^.link

B.p^.link:=q^.link;q:=p^.link

C.q^.link:=p^.link;p^.link=q

D.p^.link:=q;q^.link:=p^.link


正确答案:A
解析: 单链表是链式存储的线性表,它的每个结点中包括一个指针link,它指向该结点的后继结点的位置。从单链表中删除指针P所指的下一结点的运算表达式为 q:^=p^.link;p^.link:=q^.link。

第6题:

链式栈结点为:(data,link),top指向栈顶.若想摘除栈顶结点,并将删除结点的值保存到x中,则应执行操作()。

A.x=top->data;top=top->link;

B.top=top->link;x=top->link;

C.x=top;top=top->link;

D、x=top->link;


参考答案:A
解释:x=top->data将结点的值保存到x中,top=top->link栈顶指针指向栈顶下一结点,即摘除栈顶结点。

第7题:

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

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

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

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

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


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

第8题:

单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插人到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的?

A.q:=p^. link; p^.Link:=q^.link;

B.p^.link:=q^.1ink; q:=p^.1ink;

C.q^.link:=p^.link; p^.1ink:=q;

D.p^.1ink:=q; q^.link:=p^.link;


正确答案:C
解析:单链表是链式存储的线性表,它的每个结点中包括一个指针link,它指向该结点的后继结点的位置。将指针q指向的新结点插入到指针P指向的单链表结点之后的操作步骤是将指针P所指向的地址赋于q,将q的值赋于日向的地址,其运算表达式为q^.link:=p^.link;p^ link:=q。

第9题:

在一个单链表中,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即可。

第10题:

设单链表中结点的结构为非空的循环单链表first的尾结点(由p所指向)满足:______

A.p->link==NULL;

B.p==NULL;

C.p->link==first;

D.p==first;


正确答案:C

更多相关问题