Развернуть ссылки списка

Задача по программированию с проверкой онлайн

Сложность
Лёгкая
Языки
Python
JavaScript
TypeScript
Java
Go
Темы
Стек, очередь, связные списки

Связный список задан массивом ссылок: next[i] — индекс узла, следующего за узлом i, или -1 у последнего узла. head — индекс первого узла, -1 для пустого списка (тогда массив пуст). Каждый индекс массива — это узел списка, а лежат узлы в произвольном порядке.

Разверните список: у каждого узла новая ссылка ведёт на узел, который раньше стоял перед ним, а у прежнего первого узла новая ссылка -1. Верните новый массив ссылок (узлы сохраняют свои индексы).

Пример: next = [2, -1, 1], head = 0 (список 0 → 2 → 1) → [-1, 2, 0] (список 1 → 2 → 0).


Источник: задача CodeShare

Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).

Ещё задачи

Все задачи для тренировки