Назад к задачам
Junior — Senior
10

Инверсия однонаправленного списка

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Дан однонаправленный список, реализованный через структуру Node. Требуется изменить порядок элементов списка на обратный и вернуть указатель на новую голову.

struct Node {
    int value;
    Node* nxt;

    Node() : value(0), nxt(nullptr) {}
    Node(int x) : value(x), nxt(nullptr) {}
    Node(int x, Node* nxt) : value(x), nxt(nxt) {}
};

Node* ReverseList(Node* root) {
    // реализовать разворот списка
}

Пример:

Вход: 1 → 2 → 3 → nullptr
Выход: 3 → 2 → 1 → nullptr