Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• Ordenamiento rápido
• Ordenamiento por mezcla
Creado por Ing. Alvaro Enrique Ruano
2. Contenido
● Ordenamiento
● Métodos de Ordenamiento
o Intercambio o Burbuja
o Por Inserción
o Por Selección
o Shell
o Rápido (Quick)
o Por Mezcla (Merge)
3. Ordenamiento Rápido
● Más conocido como “Quicksort”.
● Se basa en el hecho de que es más fácil y rápido ordenar dos listas
pequeñas que una lista grande.
● Se llama método de ordenación rápida porque, en general, puede ordenar
una lista de datos mucho más rápidamente que cualquiera de los otros
métodos vistos.
● Se basa en la estrategia típica de “Divide y vencerás”.
4. Ordenamiento Rápido
● La lista a ordenar debe dividirse en dos sublistas.
● La primera sublista deberá contener todos los valores menores a un cierto
valor, mientras que la otra deberá contener los mayores.
● El valor que divide las dos sublistas es llamado “Pivote”.
● El Pivote puede ser cualquier valor arbitrario del vector.
5. Ordenamiento Rápido
● Se toma como pivote el primer elemento de la lista.
● Se recorre el arreglo de izquierda a derecha buscando elementos mayores
que el pivote.
● Se recorre el arreglo de derecha a izquierda buscando elementos
menores que el pivote.
● Al encontrar los valores mencionados anteriormente, se realiza un
intercambio.
6. Ordenamiento Rápido
● El objetivo es que la lista se vea de la siguiente forma:
● Luego que se tiene el arreglo de esta form,a VI y VD se deben ordenar de
forma recursiva teniendo como caso base cuando los subarreglos tienen
una longitud de 1.
VI Pivote VD
Subvector que contiene los
valores inferiores o iguales
desordenados.
Valor de separación. Subvector que contiene los
valores superiores o iguales
desordenados.
12. Ordenamiento Por Mezcla
● Ordenamiento por mezcla o “Merge”
● Se basa en la estrategia de “Divide y Vencerás”.
● Consiste en tomar 2 arreglos ordenados y mezclarlos para formar un
nuevo arreglo ordenado.
13. Ordenamiento Por Mezcla
● Pasos
1. Dividir por la mitad el arreglo desordenado en 2 arreglos y se continúa de
esa manera hasta llegar a arreglos de 1 elemento.
2. Se inicia el proceso de mezcla entre arreglos ordenando cada nivel hasta
llegar al arreglo original ordenado.
3. Seleccionar el elemento menor de los 2 arreglos y situarlo en la posición
1 de un nuevo arreglo.
4. Comparar los subsiguientes elementos de los 2 arreglos existentes y
colocar primero el elemento más pequeño.
5. Realizar esta operación hasta que se obtenga un único arreglo ordenado.