已知单链表上一结点的指针为p,则删除该结点后继的正确操作语句是:()

题目
单选题
已知单链表上一结点的指针为p,则删除该结点后继的正确操作语句是:()
A

 s= p->next; p=p->next;  free(s);

B

 p=p->next;  free(p);

C

 s= p->next; p->next=s->next;  free(s);

D

 p=p->next;  free(p->next);

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

第1题:

在具有n个结点的单链表中,实现()的操作,其算法的时间复杂度是O。

A.求链表的第i个结点

B.在地址为P的结点之后插入一个结点

C.删除表头结点

D.删除地址为P的结点的后继结点


正确答案:A

第2题:

在一个单链表中,若p所指结点不是最后结点,则删除p所指结点的后继结点的正确操作是 ______。

A.p=p>next

B.p->next=p->next

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

D.p->next=p


正确答案:C

第3题:

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

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


正确答案:正确

第4题:

设指针变量p指向单链表中某结点A,则删除结点A的后继结点需要的操作为()(不考虑存储空间的释放)。


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

第5题:

在一个单链表中,若p所指的结点不是最后结点,则删除p所指的结点的后继结点的正确操作是()。

A.p=p->next
B.p->next=p->next
C.p->next=p->next->next
D.p->next=p

答案:C
解析:
本题考查的是单链表的删除操作。在已知链表中元素插入或删除确切位置的情况下,在单链表中插入或删除一个结点时,仅需修改指针而无须移动元素。

第6题:

单链表的每个结点中包括一个指针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。

第7题:

在单链表指针为P的结点之后插入指针为s的结点,正确的操作是()。


答案:B
解析:
在单链表结点P后插入结点s,要先改变s结点的指针域,指向p的后继结点。然后将s的地址赋给P的指针域。具体的操作语句为s—>next=P—>next;p—>next=s。

第8题:

单链表的每个结点中包括一个指针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)是正确的。 

第9题:

在单链表中,若给定某个结点的指针,要删除该结点的后继结点的时间复杂度为()。


正确答案:O(1)

第10题:

已知单链表上一结点的指针为p,则删除该结点后继的正确操作语句是:()

  • A、 s= p->next; p=p->next;  free(s);
  • B、 p=p->next;  free(p);
  • C、 s= p->next; p->next=s->next;  free(s);
  • D、 p=p->next;  free(p->next);

正确答案:C

更多相关问题