Описание задачи
Необходимо создать новую копию связного списка, где каждый узел новой копии соответствует исходному узлу, и случайные указатели (random pointers) в новой копии правильно сопоставлены с соответствующими узлами в исходном списке.
Вход:
head: Указатель на голову исходного связного списка. Каждый узел в списке имеет три поля: val (целое число), next (указатель на следующий узел) и random (указатель на случайный узел).
Выход:
Указатель на голову новой, скопированной связной список с правильно установленными указателями next и random. Возвращается новый список, где каждый узел соответствует исходному узлу, а random указатели корректно сопоставлены.
Режим обучения Готово
Объяснение решения уже подготовлено. Нажмите кнопку, чтобы посмотреть.
Ваше решение
Подсказка (готовое решение)
def __init__(self, x, next=None, random=None):