Menu
CoddyTech

Move Zeroes

Дан массив целых чисел nums. Переместите все нули в конец массива, сохранив порядок остальных значений. Верните переставленный массив, длина которого совпадает с длиной nums.

Функция

moveZeroes(nums: integer-array) → integer-array
numsinteger-array
массив целых чисел для перестановки
Возвращаетinteger-array
nums с ненулевыми значениями в начале, в исходном порядке, а все 0 — в конце

Ограничения

  • 1 ≤ nums.length ≤ 5000
  • -105 ≤ nums[i] ≤ 105

Примеры

Ввод
nums = [0, 4, 0, 7, 2]
Вывод
[4, 7, 2, 0, 0]
Пояснение
Значения, не равные 0, — это 4, 7 и 2, и они сохраняют этот порядок в начале. Два нуля занимают последние два места.

lock icon+14 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Можешь вместо этого переместить все 0 в начало, сохранив порядок остальных значений, за один проход и с дополнительной памятью O(1)?

Сбросить код
def moveZeroes(nums):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

nums = [0, 4, 0, 7, 2]

Ожидается

[4, 7, 2, 0, 0]