在一个长度为n(n≥1)的双链表中,在p所指节点(非头节点)之前插入q所指节点的操作是( )。
A: p->prior=q; q->next=p; p->prior->next=q; q->prior=p->prior;
B: q->prior=p->prior; p->prior->next=q; q->next=p; p->prior=q->next;
C: q->next=p; p->next=q; q->prior->next=q; q->next=p;
D: p->prior->next=q; q->next=p; q->prior=p->prior; p->prior=q;
A: p->prior=q; q->next=p; p->prior->next=q; q->prior=p->prior;
B: q->prior=p->prior; p->prior->next=q; q->next=p; p->prior=q->next;
C: q->next=p; p->next=q; q->prior->next=q; q->next=p;
D: p->prior->next=q; q->next=p; q->prior=p->prior; p->prior=q;
举一反三
- 在一个双链表中,在P结点之后插入结点q的操作是()。 A: q->prior=p; p->next=q; p->next->prior=q;q->next=p->next; B: q->next=p->next; p->next->prior=q;p->next=q;q->prior=p; C: p->next=q;q->prior=p;q->next=p->next;p->next->prior=q; D: q->prior=p;p->next=q;q->next=p->next;p->next->prior=q;
- 在双向链表存储结构中,删除p所指的结点时须修改指针() A: (p->prior)->next=p->next;(p->next)->prior=p->prior; B: p->prior=(p->prior)->prior;(p->prior)->next=p; C: (p->next)->prior=p;p->rlink=(p->next)->next; D: p->next=(p->prior)->prior;p->prior=(p->next)->next
- p和q两个指针分别指向双向循环链表L的两个元素,p所指元素是q所指元素的后继的条件是()。 A: q->next==p->prior B: p==q C: p->prior==q D: q->prior==p
- 删除单链表中指针p所指结点的语句序列为( )。 A: q=p->next; p->data=q->data; p->next=q->next; free(q); B: q=p->next; q->data=p->data; p->next=q->next; free(q); C: q=p->next; p->next=q->next; free(q); D: q=p->next; p->data=q->data; free(q);
- 在一个单链表HL为表头指针中,若要在指针q所指的结点的后面插入一个由指针p所指的结点,则执行 ( )。 A: q->next = p->next ; p->next = q; B: p->next = q->next; q = p; C: q->next = p->next; p->next = q; D: p->next = q->next ; q->next = p;