单选题
下面的代码片段用于在双向链表中删除一个节点。请在横线处填入( ),使其能正确实现相应功能。
void deleteNode(DoublyListNode*& head, int value) {\tDoublyListNode* current = head;\twhile (current != nullptr && current->val != value) {\t\tcurrent = current->next;\t}\tif (current != nullptr) {\t\tif (current->prev != nullptr) {\t\t\t____________________________________ // 在此处填入代码\t\t} else {\t\t\thead = current->next;\t\t}\t\tif (current->next != nullptr) {\t\t\tcurrent->next->prev = current->prev;\t\t}\t\tdelete current;\t}}
A.
if (current->next != nullptr) current->next->prev = current->prev;
B.
current->prev->next = current->next;
C.
delete current->next;
D.
current->prev = current->next;
发表评论 取消回复