Ordenar una estructura de datos consiste en reacomodar

  • Slides: 76
Download presentation
Ordenar una estructura de datos consiste en reacomodar sus elementos de acuerdo a algún

Ordenar una estructura de datos consiste en reacomodar sus elementos de acuerdo a algún criterio. Por ejemplo, los mensajes pueden ordenarse por asunto, por fecha, por contacto. Si varios elementos coinciden de acuerdo al criterio, pueden definirse niveles de criterios. Por ejemplo, los mensajes pueden ordenarse alfabéticamente por asunto y dentro de un mismo asunto, cronológicamente por fecha. Existen distintos algoritmos de ordenamiento, que pueden describirse independientemente del problema. Introducción a la Programación Orientada a Objetos Ordenamiento

Los algoritmos de ordenamiento resultan un tema de interés por varios motivos: • Son

Los algoritmos de ordenamiento resultan un tema de interés por varios motivos: • Son importantes en diversas aplicaciones, en particular en el área de Bases de Datos, en donde los requerimientos de eficiencia hacen del ordenamiento un tema crítico. • Existen muchísimos métodos para resolver el mismo problema y por lo tanto es un tema interesante para introducir nociones de tiempo de ejecución y eficiencia. • Permiten ilustrar temas importantes de Resolución de Problemas. Introducción a la Programación Orientada a Objetos Ordenamiento

El método de ordenamiento burbuja consiste en comparar cada elemento de la estructura con

El método de ordenamiento burbuja consiste en comparar cada elemento de la estructura con el siguiente e intercambiándolos si corresponde. El proceso se repite hasta que la estructura esté ordenada. El orden se establece de acuerdo a la clave y la estructura tiene que tener acceso directo a sus componentes. Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 5226 1020 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 5226 1012 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 5226 1015 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 El último elemento está en su posición definitiva Introducción

1014 1020 1012 1015 5226 El último elemento está en su posición definitiva Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 Repetimos el proceso pero ahora sin considerar el último

1014 1020 1012 1015 5226 Repetimos el proceso pero ahora sin considerar el último elemento de la estructura Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1020 1012 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1012 1020 1015 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1015 1020 5226 El cuarto elemento está en su posición definitiva Introducción

1014 1012 1015 1020 5226 El cuarto elemento está en su posición definitiva Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1015 1020 5226 En cada recorrido consideramos un elemento menos Introducción a

1014 1012 1015 1020 5226 En cada recorrido consideramos un elemento menos Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1012 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1014 1012 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1014 1012 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1020 5226 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Algoritmo Burbuja repetir mientras no este ordenada para cada par de elementos adyacentes si

Algoritmo Burbuja repetir mientras no este ordenada para cada par de elementos adyacentes si el elemento es mayor que el que sigue intercambiar Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Refinamos el algoritmo para obtener una versión más cercana a la implementación en Java

Refinamos el algoritmo para obtener una versión más cercana a la implementación en Java Algoritmo Burbuja k n repetir mientras no este ordenada i 1 repetir mientras i < k si Li es mayor que Li+1 Intercambiar i i+1 k k-1 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Ordenamiento: Método de la Burbuja Refinamos el algoritmo para obtener una versión más cercana

Ordenamiento: Método de la Burbuja Refinamos el algoritmo para obtener una versión más cercana a la implementación en Java Algoritmo Burbuja k n repetir mientras k > 1 i 1 repetir mientras i < k si Li es mayor que Li+1 Intercambiar i i+1 k k-1 Introducción a la Programación Orientada a Objetos

1012 5224 1012 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 5224 1012 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 5224 1012 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 5224 1012 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 5224 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 5224 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 5224 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 5224 1015 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 5224 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 5224 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 5224 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 5224 1016 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1016 5224 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1016 5224 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1016 5224 Introducción a la Programación Orientada a Objetos Ordenamiento: Método

1012 1014 1015 1016 5224 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

1012 1014 1015 1016 5224 Si no hay intercambios está ordenada Introducción a la

1012 1014 1015 1016 5224 Si no hay intercambios está ordenada Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo.

Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo. Intercambios false repetir mientras i < k si Li es mayor que Li+1 Intercambiar Hubo. Intercambios true i i+1 k k-1 Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero En cada recorrido consideramos un elemento menos Introducción a la

balsa canoa buque velero En cada recorrido consideramos un elemento menos Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Si no hay intercambios está ordenada Introducción a la Programación

balsa buque canoa velero Si no hay intercambios está ordenada Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo. Intercambios false repetir mientras i < k si Li es mayor que Li+1 Intercambiar Hubo. Intercambios true i i+1 k k-1 El algoritmo es genérico, independiente del tipo de los Introducción a la Programación Orientada a Objetos elementos.

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo. Intercambios false repetir mientras i < k si Li es mayor que Li+1 Intercambiar Hubo. Intercambios true i i+1 k k-1 La eficiencia puede mejorar si en cada recorrido interno Introducción adel la Programación Orientada a Objetos identificamos la posición último intercambio.

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método

balsa velero balsa canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa velero canoa buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa velero buque Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero En cada recorrido consideramos un elemento menos Introducción a la

balsa canoa buque velero En cada recorrido consideramos un elemento menos Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa canoa buque velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de

balsa buque canoa velero Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

balsa buque canoa velero Si no hay intercambios está ordenada Introducción a la Programación

balsa buque canoa velero Si no hay intercambios está ordenada Introducción a la Programación Orientada a Objetos Ordenamiento: Método de la Burbuja

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo. Intercambios false repetir mientras i < k si Li es mayor que Li+1 Intercambiar Hubo. Intercambios true i i+1 k k-1 El algoritmo es genérico, independiente del tipo de los Introducción a la Programación Orientada a Objetos elementos.

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras

Ordenamiento: Método de la Burbuja Algoritmo Burbuja Hubo. Intercambios true k n repetir mientras Hubo. Intercambios i 1 Hubo. Intercambios false repetir mientras i < k si Li es mayor que Li+1 Intercambiar Hubo. Intercambios true i i+1 k k-1 La eficiencia puede mejorar si en cada recorrido interno Introducción adel la Programación Orientada a Objetos identificamos la posición último intercambio.