Ctrl K

Хвост списка — в начало

Средняя
Дана голова head односвязного списка и число k. Сделайте k раз одно и то же: отцепите последний узел и поставьте его в начало списка. Верните голову получившегося списка. k может быть намного больше длины списка, так что честно повторять шаг k раз не получится.
Пример 1
head=list_node([10, 20, 30, 40]), k=1 → [40, 10, 20, 30]

Последний узел 40 переезжает в начало: [40, 10, 20, 30].

Пример 2
head=list_node([5, 6]), k=3 → [6, 5]

Два шага возвращают список к исходному, поэтому три шага — то же, что один: [6, 5].

Пример 3
head=list_node([]), k=7 → None

Пустой список остаётся пустым.

Ограничения
  • 0 ≤ число узлов ≤ 500
  • -100 ≤ Node.val ≤ 100
  • 0 ≤ k ≤ 2·10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиУбрать k-й узел с конца СредняяОтсортированный список без повторов СредняяРазделить список вокруг опорного числа СредняяСписок, сложенный с двух концов СредняяСортировка связного списка Средняя
загружаем Python…
Вход
head=list_node([10, 20, 30, 40]), k=1
Ожидается
[40, 10, 20, 30]

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 102 теста на сервере, включая скрытые.