DSA/docs/es/Ordenamiento/Merge-Sort.md

35 lines
1.0 KiB
Markdown

# Merge Sort
Merge Sort es un algoritmo "Divide y venceras". Divide la matriz de entrada en dos mitades, se llama a sí mismo para cada una de ellas y luego fusiona las dos mitades ordenadas.
## Pasos
1. Encuentra el punto medio para dividir la matriz en dos mitades.
2. Llama a mergeSort para la primera mitad.
3. Llama a mergeSort para la segunda mitad.
4. Combina las dos mitades ordenadas en los pasos 2 y 3.
## Ejemplo
Dado el arreglo:
**12 11 13 5 6 7**
El arreglo ordenado es
**5 6 7 11 12 13**
## Implementación
- [Java](../../../algorithms/Java/sorting/merge-sort.java)
- [C](../../../algorithms/C/sorting/merge-sort.c)
- [C++](../../../algorithms/CPlusPlus/Sorting/merge-sort.cpp)
- [JavaScript](../../../algorithms/JavaScript/src/sorting/merge-sort.js)
- [Python](../../../algorithms/Python/sorting/merge_sort.py)
- [C#](../../../algorithms/CSharp/src/Sorts/merge-sort.cs)
## URL del video
[Video de Youtube acerca de Merge Sort](https://www.youtube.com/watch?v=jlHkDBEumP0)
## Otros
[Wikipedia](https://en.wikipedia.org/wiki/Merge_sort)