在不带哨兵结点的双向链表中,结点 p 既不是头结点也不是尾结点。删除 p 的正确代码是( )。
struct Node {
int value;
Node *prev;
Node *next;
};
- A. p->prev = p->next; p->next = p->prev; delete p;
- B. p->prev->next = p; p->next->prev = p; delete p;
- C. p->prev->next = p->next; p->next->prev = p->prev; delete p;
- D. p->next = p->prev; p->prev->next = nullptr; delete p;
正确答案:C