SlideShare una empresa de Scribd logo
1 de 19
Ordenamientos
Unidad 3
ING. ALVARO ENRIQUE RUANO
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)
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”.
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.
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.
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.
Ordenamiento Rápido
Ordenamiento Rápido - Algoritmo
Ordenamiento Rápido
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.
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.
Ordenamiento Por Mezcla
Ordenamiento Por Mezcla
Asistencia
● Toma de asistencia.
Gracias por su atención

Más contenido relacionado

La actualidad más candente

Metodo de ordenacion por Insercion
 Metodo de ordenacion por Insercion Metodo de ordenacion por Insercion
Metodo de ordenacion por Insercion
Mateo Falcon
 
Sorting Algorithms
Sorting AlgorithmsSorting Algorithms
Sorting Algorithms
multimedia9
 
Lista Doblemente Enlazada
Lista Doblemente EnlazadaLista Doblemente Enlazada
Lista Doblemente Enlazada
yordy Macoto
 
Metodo burbuja jenny v.
Metodo burbuja   jenny v.Metodo burbuja   jenny v.
Metodo burbuja jenny v.
jhosep2013
 

La actualidad más candente (20)

Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Quicksort Presentation
Quicksort PresentationQuicksort Presentation
Quicksort Presentation
 
Metodo de ordenacion por Insercion
 Metodo de ordenacion por Insercion Metodo de ordenacion por Insercion
Metodo de ordenacion por Insercion
 
Queues
QueuesQueues
Queues
 
Sorting Algorithm
Sorting AlgorithmSorting Algorithm
Sorting Algorithm
 
Ordenacion Burbuja
Ordenacion BurbujaOrdenacion Burbuja
Ordenacion Burbuja
 
Sorting Algorithms
Sorting AlgorithmsSorting Algorithms
Sorting Algorithms
 
Programación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibradosProgramación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibrados
 
Ordenamiento por seleccion
Ordenamiento por seleccionOrdenamiento por seleccion
Ordenamiento por seleccion
 
Quick sort
Quick sortQuick sort
Quick sort
 
Heap sort
Heap sortHeap sort
Heap sort
 
Lista Doblemente Enlazada
Lista Doblemente EnlazadaLista Doblemente Enlazada
Lista Doblemente Enlazada
 
3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno
 
Insertion sort
Insertion sortInsertion sort
Insertion sort
 
5. algoritmos de búsqueda
5. algoritmos de búsqueda5. algoritmos de búsqueda
5. algoritmos de búsqueda
 
Pilas Colas
Pilas ColasPilas Colas
Pilas Colas
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Algoritmo Heap Sort
Algoritmo Heap SortAlgoritmo Heap Sort
Algoritmo Heap Sort
 
Quick Sort
Quick SortQuick Sort
Quick Sort
 
Metodo burbuja jenny v.
Metodo burbuja   jenny v.Metodo burbuja   jenny v.
Metodo burbuja jenny v.
 

Similar a Ordenamientos rápido y mezcla

Quick Sort
Quick SortQuick Sort
Quick Sort
jo0eel
 

Similar a Ordenamientos rápido y mezcla (14)

Algoritmos de Ordenación
Algoritmos de OrdenaciónAlgoritmos de Ordenación
Algoritmos de Ordenación
 
Comparativa entre Algoritmos de Ordenamiento
Comparativa entre Algoritmos de OrdenamientoComparativa entre Algoritmos de Ordenamiento
Comparativa entre Algoritmos de Ordenamiento
 
1_Metodos.doc
1_Metodos.doc1_Metodos.doc
1_Metodos.doc
 
Unidad 5
Unidad 5Unidad 5
Unidad 5
 
Unidad 5
Unidad 5Unidad 5
Unidad 5
 
Unidad cinco estructura de datos
Unidad cinco estructura de datosUnidad cinco estructura de datos
Unidad cinco estructura de datos
 
Ordenamiento QuickSort
Ordenamiento QuickSortOrdenamiento QuickSort
Ordenamiento QuickSort
 
Quick Sort
Quick SortQuick Sort
Quick Sort
 
Ordenamientos burbuja e inserción
Ordenamientos burbuja e inserciónOrdenamientos burbuja e inserción
Ordenamientos burbuja e inserción
 
Quick Sort
Quick SortQuick Sort
Quick Sort
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
 
Ordenamiento c++
Ordenamiento c++Ordenamiento c++
Ordenamiento c++
 
Ordenacion
OrdenacionOrdenacion
Ordenacion
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 

Más de Alvaro Enrique Ruano

Más de Alvaro Enrique Ruano (16)

Resumen caso Enron
Resumen caso EnronResumen caso Enron
Resumen caso Enron
 
Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)
 
Árboles Multicamino, B y B+
Árboles Multicamino, B y B+Árboles Multicamino, B y B+
Árboles Multicamino, B y B+
 
Árboles binarios, ABB y AVL
Árboles binarios, ABB y AVLÁrboles binarios, ABB y AVL
Árboles binarios, ABB y AVL
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Introducción al análisis de algoritmos
Introducción al  análisis de algoritmosIntroducción al  análisis de algoritmos
Introducción al análisis de algoritmos
 
Ordenamientos por selección y Shell
Ordenamientos por selección y ShellOrdenamientos por selección y Shell
Ordenamientos por selección y Shell
 
Recursividad directa e indirecta
Recursividad directa e indirectaRecursividad directa e indirecta
Recursividad directa e indirecta
 
Programación Orientada a Objetos - constructores y destructores
Programación Orientada a Objetos - constructores y destructoresProgramación Orientada a Objetos - constructores y destructores
Programación Orientada a Objetos - constructores y destructores
 
Programación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clasesProgramación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clases
 
Programación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismoProgramación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismo
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Técnicas de programación
Técnicas de programaciónTécnicas de programación
Técnicas de programación
 
Análisis de una inversión en activos financieros negociados por medio de la B...
Análisis de una inversión en activos financieros negociados por medio de la B...Análisis de una inversión en activos financieros negociados por medio de la B...
Análisis de una inversión en activos financieros negociados por medio de la B...
 
Solución de problemas y ciclo de vida del desarrollo de software
Solución de problemas y ciclo de vida del desarrollo de softwareSolución de problemas y ciclo de vida del desarrollo de software
Solución de problemas y ciclo de vida del desarrollo de software
 

Ordenamientos rápido y mezcla

  • 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.
  • 9.
  • 10.
  • 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.
  • 16.
  • 17.
  • 18. Asistencia ● Toma de asistencia.
  • 19. Gracias por su atención