单选题 双向链表中有两个指针域,即prior和next,分别指向前驱及后继,设p指向链表中的一个结点,q指向一个待插入结点,现要求在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;
  • C.q->next=p;p->next=q;p->prior->next=q;q->next=p;
  • D.p->prior->next=q;q->next=p;q->prior=p->prior;p->prior=q;
【正确答案】 A
【答案解析】此题考查的知识点是双向链表的插入操作。在p前插入,要修改p的prior指针、p的prior所指结点的next指针,所以选A。B、C、D都将使地址丢失,连接失败。