Mezclar dos listas ordenadas

Tiempo límite 2 s
Memoria límite 256 MB
Casos de prueba 11
Dificultad Fácil Algoritmos
Mostrar (3) Dos punterosListas enlazadasRecursión
Enviar solución

Puntos: 5

Tipos de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Tienes dos listas enlazadas, cada una ordenada de menor a mayor. Mézclalas en una sola lista ordenada que contenga todos los nodos de ambas.

Entrada

La primera línea tiene \(n\), el largo de la primera lista, y la segunda sus \(n\) valores en orden. La tercera tiene \(m\), el largo de la segunda lista, y la cuarta sus \(m\) valores. Una lista vacía se escribe con largo \(0\) y una línea vacía.

  • \(0 \le n, m \le 10^5\), \(n + m \ge 1\).
  • Todos los valores cumplen \(|v| \le 10^9\) y cada lista viene en orden no decreciente.

Salida

Una línea con los \(n + m\) valores de la lista mezclada.

Ejemplo 1

Entrada

3
1 2 4
3
1 3 4

Salida

1 1 2 3 4 4

Ejemplo 2

Entrada

0

1
0

Salida

0

Basado en el problema 21 de LeetCode, Merge Two Sorted Lists, adaptado a entrada y salida estándar; enunciado redactado para este juez. Es parte de la lista Grind 75 de Yangshun Tay.


Comentarios

No hay comentarios por el momento.