Menu
CoddyTech

Merge Sorted Array

Você recebe dois arrays de números inteiros, nums1 e nums2. Cada um já está ordenado em ordem não decrescente. Retorne um único array que contenha todos os valores de ambos, também em ordem não decrescente. Um valor que aparece nos dois arrays aparece no resultado tantas vezes quanto aparece no total.

Função

merge(nums1: integer-array, nums2: integer-array) → integer-array
nums1integer-array
o primeiro array ordenado
nums2integer-array
o segundo array ordenado
Retornainteger-array
todos os valores de ambos os arrays em um único array ordenado, de comprimento nums1.length + nums2.length

Restrições

  • 1 ≤ nums1.length, nums2.length ≤ 2000
  • -105 ≤ nums1[i], nums2[j] ≤ 105
  • nums1 e nums2 estão ordenados em ordem não decrescente.

Exemplos

Entrada
nums1 = [1, 4, 9]nums2 = [2, 3, 10]
Saída
[1, 2, 3, 4, 9, 10]
Explicação
Leia os dois primeiros elementos e mantenha o menor: 1, depois 2 e 3 de nums2, depois 4 e 9 de nums1, e 10 por último. O resultado contém os seis valores.

lock icon+13 testes ocultos ao enviar

challenge icon

Para ir além

Você consegue mesclar k arrays ordenados, contendo N valores no total, em O(N log k) de tempo?

Redefinir código
def merge(nums1, nums2):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

nums1 = [1, 4, 9]
nums2 = [2, 3, 10]

Esperado

[1, 2, 3, 4, 9, 10]