Merge sort
JavaScript · Unidad 22: Buscar y ordenar
- Plan completo
- JavaScript
- 9 ejercicios
Dos listas que ya vienen ordenadas se juntan en una sola sin volver a ordenar nada: mira la punta de cada una y toma la más chica.
Como las dos están ordenadas, la punta más chica es el menor de todos los que quedan.
const a = [2, 8];
const b = [3, 5];
const res = [];
if (a[0] <= b[0]) {
res.push(a.shift());
} else {
res.push(b.shift());
}
console.log(res, a, b);Imprime
[ 2 ] [ 8 ] [ 3, 5 ]
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Completa el código
Completa para que la mezcla tome siempre la punta más chica.
2. Predice la salida
Se mezclan dos listas y después se imprimen las dos originales. ¿Qué imprime?
3. Encuentra el bug
mezclardebería juntar las dos listas completas y dar[ 2, 3, 5, 8 ]. ¿Qué línea tiene el error?4. Opción múltiple
Mezclar dos listas ordenadas de 50 números cada una, ¿cuánto trabajo es?
5. Ordena las líneas
Ordena la función que parte una lista en dos mitades y las regresa dentro de un arreglo, la izquierda primero.
6. Predice la salida
Cada llamada imprime la lista que le tocó. ¿Qué imprime?
7. Completa el código
Completa para que la mitad izquierda llegue ordenada a la mezcla.
8. Encuentra el caso que falla
ordenar(ns)regresa una lista nueva con los números de menor a mayor; con la lista vacía regresa una lista vacía. ¿Con qué llamada falla?9. Predice la salida
Se ordena la lista y después se imprime la original. ¿Qué imprime?
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.