设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被嵌入的结点X,则在结点A和结点B嵌入结点X的操作序列为()
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
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
举一反三
- 设指针变量p指向双向链表中结点A,指针变量s指向被插入的结点X,则在结点A的后面插入结点X的操作序列为()。 A: p->next=s;s->prior=p;p->next->prior=s;s->next=p->next; B: s->prior=p;s->next=p->next;p->next=s;p->next->prior=s; C: p->next=s;p->next->prior=s;s->prior=p;s->next=p->next; D: s->prior=p;s->next=p->next;p->next->prior=s;p->next=s;
- 已知指针p和q分别指向某单链表中第一个结点和最后一个结点。假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为( )。 A: p->next=s->next;s->next=q; B: s->next=q;p->next=s->next; C: s->next=p;q->next=s->next; D: q->next=s->next;s->next=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
- 在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q所指结点和p所指结点之间插入s所指结点,则执行()。 A: p->next=s;s->next=q; B: q->next=s;s->next=p; C: p->next=s->next;s->next=p; D: s->next=p->next;p->next=s;
- 在单链表中,若*p结点不是终端结点,在其后插入*s结点的操作是 。 A: s->next = p; p->next = s; B: s->next = p->next; p->next = s; C: s->next = p->next; p = s; D: p->next = s; s->next = p;