14025. [GESP202609 五级 C++] 第 3 题

[GESP202609 五级 C++] 第 3 题

下面函数使用快慢指针查找单链表的中间结点。横线处应填写(  )。

struct Node {
    int value;
    Node *next;
};

Node *middle(Node *head) {
    Node *slow = head;
    Node *fast = head;
    while (fast != nullptr && fast->next != nullptr) {
        slow = slow->next;
        ______________________
    }
    return slow;
}

{{ select(1) }}

  • fast = fast->next;

  • fast = fast->next->next;

  • fast = slow->next;

  • fast = head->next;