第30237题 单选题
在C++双向链表中,若要删除指针p指向的非头非尾的中间节点,已知节点定义为`struct DNode { int data; DNode *prev, *next; };`,下列操作序列中正确的是?

本题考察双向链表非边界节点的删除操作,无需考虑p为空、p为头节点、p为尾节点等特殊情况。

A

p->prev->next = p->next; delete p; p->next->prev = p->prev;

B

p->next->prev = p->prev; p->prev->next = p->next; delete p;

C

delete p; p->prev->next = p->next; p->next->prev = p->prev;

D

p->next = p->prev->next; p->prev = p->next->prev; delete p;

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析