第23654题
C++双向链表删除节点函数的横线处应填入哪段正确代码?

下面的代码片段用于在双向链表中删除一个节点。请在横线处填入正确代码,使其能正确实现相应功能:

void deleteNode(DoublyListNode*& head, int value) {
    DoublyListNode* current = head;
    while (current != nullptr && current->val != value) {
        current = current->next;
    }
    if (current != nullptr) {
        if (current->prev != nullptr) {
            ________________________ // 在此处填入代码
        } else {
            head = current->next;
        }
        if (current->next != nullptr) {
            current->next->prev = current->prev;
        }
        delete current;
    }
}
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;

提交0次 正确率0.00%
答案解析