#3683. [GESP202403 六级 C++] 第 15 题

[GESP202403 六级 C++] 第 15 题

下面的代码片段用于反转单链表,请进行( )修改,使其能正确实现相应功能。

ListNode* reverseLinkedList(ListNode* head) {
    ListNode* prev = nullptr;
    ListNode* current = head;
    while (current != nullptr) {
        ListNode* next = current->next;
        current->next = next;
        prev = current;
        current = next;
    }
    return prev;
}

{{ select(1) }}

  • current->next = next; 应该改为 current->next = prev;
  • ListNode* next = current->next; 应该改为 ListNode* next = prev->next;
  • current != nullptr 应该改为 current->next != nullptr
  • ListNode* prev = nullptr; 应该改为 ListNode* prev = head;