Назад к задачам
ТочкаПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Intern — Middle
6
Реверс списка без использования встроенных методов
Компании, где спрашивали:
Условие задачи
Необходимо написать функцию, которая меняет порядок элементов списка на противоположный без применения метода .reverse() и без использования срезов типа [::-1]. При этом список должен быть изменён «на месте», а не создаваться новый объект.
def manual_reverse(seq: list) -> list:
left, right = 0, len(seq) - 1
while left < right:
seq[left], seq[right] = seq[right], seq[left]
left += 1
right -= 1
return seq
manual_reverse([1, 2, 3])
arr = [1, 2, 3]
res = manual_reverse(arr)
print(id(arr), id(res))
print([1, 2] is [1, 2])