Поворот массива вправо на k шаговPython

Программы на Python
Anonymous
Поворот массива вправо на k шагов

Сообщение Anonymous »


Для заданного целочисленного массива чисел поверните массив вправо на k шагов, где k неотрицательно.

Пример:

Ввод: nums = [1,2,3,4,5,6,7], k = 3

Выход: [5,6,7,1,2,3,4]

Объяснение:

повернуть на 1 шаг вправо: [7,1,2,3,4,5,6]

повернуть на 2 шага вправо: [6,7,1,2,3,4,5]

повернуть на 3 шага вправо: [5,6,7,1,2,3,4]

Как решить задачу с временной сложностью O(n) и пространственной сложностью O(1) (если возможно)?

П.С. Я знаю решения только с временной сложностью O(kn) и пространственной сложностью O(1).

Вернуться в «Python»