1、在一单链表中,已知q所指的结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行(C )
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;
解释:需要做的事就是把原来p,q二人的联系转化为p,s,q三人的联系,先让p指向s,即q->next=s;然后让s指向q,即s->next=p
2、在一个单链表中,若p所指的结点不是最后结点,在p之后插入s结点,则执行(C)
A、s->next=p;p->next=s. B.s->next=p->next;p=s.C. s->next=p->next;p->next=s. D.p->next=s;s->next=p.
解释:首先的保证p后面的一个节点不能断掉,应为是单链表,所以p后面的节点先要与新插入的s相连,s->next = p->next然后在将s与p相连p->next= s
3、在一个单链表中,若删除p所指结点的后续结点,则执行 (A)
A. p->next= p->next->next; B. p= p->next; p->next= p->next->next;
C. p->next= p->next; D. p= p->next->next;
C. p->next= p->next; D. p= p->next->next;
解释:将p节点的下一个下一个覆盖p节点的下一个