Menu
CoddyTech

Move Zeroes

Você recebe um array de inteiros nums. Mova todos os 0 para o final do array e mantenha os outros valores na ordem em que estavam. Retorne o array reorganizado, que tem o mesmo tamanho que nums.

Função

moveZeroes(nums: integer-array) → integer-array
numsinteger-array
o array de números inteiros a ser reorganizado
Retornainteger-array
números com os valores diferentes de zero primeiro, na ordem original, e todos os 0 no final

Restrições

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

Exemplos

Entrada
nums = [0, 4, 0, 7, 2]
Saída
[4, 7, 2, 0, 0]
Explicação
Os valores que não são 0 são 4, 7 e 2, e eles mantêm essa ordem no início. Os dois 0s ocupam os dois últimos lugares.

lock icon+14 testes ocultos ao enviar

challenge icon

Para ir além

Você consegue mover todos os 0 para o início, mantendo os outros valores na ordem em que estão, em uma única passagem e usando memória extra O(1)?

Redefinir código
def moveZeroes(nums):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

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

Esperado

[4, 7, 2, 0, 0]