SlideShare una empresa de Scribd logo
1 de 21
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
● Consiste en organizar un conjunto de datos en algún orden dado
(creciente o decreciente).
● También es llamado “Clasificación”.
● Es una operación básica de la programación.
● Según estadísticas, las operaciones de ordenamiento y búsqueda
representan el 50% del tiempo de uso de las computadoras.
Ordenamiento
● Existen diferentes métodos de ordenamiento. Su selección dependerá de
los siguientes factores:
o Tamaño del arreglo a clasificar
o Tipo de datos
o Cantidad de memoria disponible
● Tipo de clasificación:
o Interna: en almacenamiento principal (arrays y listas)
o Externa: en almacenamiento secundario (archivos)
Método Burbuja
● También llamado de intercambio.
● Funciona revisando cada elemento de la lista que va a ser ordenada con
el siguiente elemento de la misma (par de elementos adyacentes),
realizando intercambios si es requerido.
● La lista se revisa varias veces hasta que esté ordenada.
● Se considera el algoritmo más sencillo de implementar.
Método Burbuja - Algoritmo 1
Método Burbuja
● Ordenar la siguiente lista: 75 26 67 25 46 1 23 6
Método Burbuja
● Completar la tabla hasta que quede ordenada.
● ¿Qué complicación tiene este algoritmo?
Método Burbuja
● Cada recorrido efectúa n-1 comparaciones y como máximo n-1
intercambios.
● Cada ordenación requiere n-1 recorridos.
● Por lo tanto, cada ordenación requiere intercambios máximos de:
(n-1) * (n-1) = (n-1)^2
Método Burbuja - Algoritmo 2
Método Burbuja - Algoritmo 2
● Mejora la velocidad de ejecución.
● Ya que el valor más grande siempre se mueve al final de la lista, se puede
evitar hacer la comparación con los valores ya ubicados.
● Evita realizar n-1 comparaciones en cada recorrido,
● Por ello se optimiza el primer algoritmo para realizar n-i comparaciones.
Método Burbuja - Algoritmo 3
Método Burbuja - Algoritmo 3
● Se mantienen las mejoras del Algoritmo 2.
● Se incluye una bandera que verifica si existió por lo menos un intercambio
en el recorrido.
● Si no hubo intercambio, el arreglo ya está ordenado por lo que se detiene
el procesamiento.
Video Bubble Sort
https://www.youtube.com/watch?v=lyZQPjUT5B4
Ordenamiento por Inserción
● También se conoce como “Método de baraja” porque es utilizado por los
jugadores de cartas.
● El método consiste en insertar el elemento evaluado en la posición
correspondiente dentro de una parte ya ordenada del listado.
● Se debe de realizar un corrimiento de los elementos posteriores.
● Se realiza un recorrido desde el segundo elemento hasta el final y cada
elemento es insertado en la posición adecuada dentro del segmento inicial
del listado.
Ordenamiento por Inserción
● Ejemplo de inserción en sección ya ordenada.
Ordenamiento por Inserción
● Bosquejo del Algoritmo de Ordenamiento por Inserción
Video Insert Sort
https://www.youtube.com/watch?v=ROalU379l3U
Ordenamiento por Inserción
Asistencia
● Toma de asistencia.
Gracias por su atención

Más contenido relacionado

La actualidad más candente

Ordenamiento burbuja
Ordenamiento burbujaOrdenamiento burbuja
Ordenamiento burbujaOscar Mora
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoJosé Antonio Sandoval Acosta
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..NANO-06
 
5. algoritmos de búsqueda
5. algoritmos de búsqueda5. algoritmos de búsqueda
5. algoritmos de búsquedaFernando Solis
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 
Metodos de ordenamiento 2
Metodos de ordenamiento 2Metodos de ordenamiento 2
Metodos de ordenamiento 2angela montilla
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoTAtiizz Villalobos
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasHuascar Génere
 
Memoria Estatica
Memoria EstaticaMemoria Estatica
Memoria EstaticaJ M
 
Unidad 3 estructura lineales
Unidad 3 estructura linealesUnidad 3 estructura lineales
Unidad 3 estructura linealesEnrique2194
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)Sarai Gotopo
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamientoLalo Chooper
 

La actualidad más candente (20)

Ordenamiento burbuja
Ordenamiento burbujaOrdenamiento burbuja
Ordenamiento burbuja
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de Ordenamiento
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..
 
5. algoritmos de búsqueda
5. algoritmos de búsqueda5. algoritmos de búsqueda
5. algoritmos de búsqueda
 
Apuntadores y listas
Apuntadores y listasApuntadores y listas
Apuntadores y listas
 
Metodo de busqueda
Metodo de busquedaMetodo de busqueda
Metodo de busqueda
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Ordenamiento parte 2
Ordenamiento parte 2Ordenamiento parte 2
Ordenamiento parte 2
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Metodos de ordenamiento 2
Metodos de ordenamiento 2Metodos de ordenamiento 2
Metodos de ordenamiento 2
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamiento
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
Memoria Estatica
Memoria EstaticaMemoria Estatica
Memoria Estatica
 
Unidad 3 estructura lineales
Unidad 3 estructura linealesUnidad 3 estructura lineales
Unidad 3 estructura lineales
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)
 
Colas
ColasColas
Colas
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 

Similar a Ordenamientos burbuja e inserción

Similar a Ordenamientos burbuja e inserción (20)

1_Metodos.doc
1_Metodos.doc1_Metodos.doc
1_Metodos.doc
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
 
Unidad cinco estructura de datos
Unidad cinco estructura de datosUnidad cinco estructura de datos
Unidad cinco estructura de datos
 
Tema5
Tema5Tema5
Tema5
 
Recursividad, Ordenacion y Busqueda
Recursividad, Ordenacion y BusquedaRecursividad, Ordenacion y Busqueda
Recursividad, Ordenacion y Busqueda
 
Estructura de dato unidad 5
Estructura de dato unidad 5Estructura de dato unidad 5
Estructura de dato unidad 5
 
Ordenamientos de vectores
Ordenamientos de vectoresOrdenamientos de vectores
Ordenamientos de vectores
 
metodos-de-ordenamiento.pdf
metodos-de-ordenamiento.pdfmetodos-de-ordenamiento.pdf
metodos-de-ordenamiento.pdf
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busqueda
 
Metodos de odenamiento de vctores
Metodos de odenamiento de vctoresMetodos de odenamiento de vctores
Metodos de odenamiento de vctores
 
S3-SCBC.pptx
S3-SCBC.pptxS3-SCBC.pptx
S3-SCBC.pptx
 
S3-SCBC.pptx
S3-SCBC.pptxS3-SCBC.pptx
S3-SCBC.pptx
 
Unidad 1 1
Unidad 1   1Unidad 1   1
Unidad 1 1
 
Unidad 5
Unidad 5Unidad 5
Unidad 5
 
Unidad 5
Unidad 5Unidad 5
Unidad 5
 
Ordenamiento shell
Ordenamiento shellOrdenamiento shell
Ordenamiento shell
 
Presentacion recursividad
Presentacion recursividadPresentacion recursividad
Presentacion recursividad
 
Algoritmos de Ordenación
Algoritmos de OrdenaciónAlgoritmos de Ordenación
Algoritmos de Ordenación
 
Ordenacion
OrdenacionOrdenacion
Ordenacion
 
02 uni1-estructuras de datos-arreglos
02 uni1-estructuras de datos-arreglos02 uni1-estructuras de datos-arreglos
02 uni1-estructuras de datos-arreglos
 

Más de Alvaro Enrique Ruano

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)Alvaro Enrique Ruano
 
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 algoritmosAlvaro Enrique Ruano
 
Ordenamientos por selección y Shell
Ordenamientos por selección y ShellOrdenamientos por selección y Shell
Ordenamientos por selección y ShellAlvaro Enrique Ruano
 
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 destructoresAlvaro Enrique Ruano
 
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 clasesAlvaro Enrique Ruano
 
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 polimorfismoAlvaro Enrique Ruano
 
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étodosAlvaro Enrique Ruano
 
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...Alvaro Enrique Ruano
 
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 softwareAlvaro 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
 
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 rápido y mezcla
Ordenamientos rápido y mezclaOrdenamientos rápido y mezcla
Ordenamientos rápido y mezcla
 
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 burbuja e inserción

  • 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 ● Consiste en organizar un conjunto de datos en algún orden dado (creciente o decreciente). ● También es llamado “Clasificación”. ● Es una operación básica de la programación. ● Según estadísticas, las operaciones de ordenamiento y búsqueda representan el 50% del tiempo de uso de las computadoras.
  • 4. Ordenamiento ● Existen diferentes métodos de ordenamiento. Su selección dependerá de los siguientes factores: o Tamaño del arreglo a clasificar o Tipo de datos o Cantidad de memoria disponible ● Tipo de clasificación: o Interna: en almacenamiento principal (arrays y listas) o Externa: en almacenamiento secundario (archivos)
  • 5. Método Burbuja ● También llamado de intercambio. ● Funciona revisando cada elemento de la lista que va a ser ordenada con el siguiente elemento de la misma (par de elementos adyacentes), realizando intercambios si es requerido. ● La lista se revisa varias veces hasta que esté ordenada. ● Se considera el algoritmo más sencillo de implementar.
  • 6. Método Burbuja - Algoritmo 1
  • 7. Método Burbuja ● Ordenar la siguiente lista: 75 26 67 25 46 1 23 6
  • 8. Método Burbuja ● Completar la tabla hasta que quede ordenada. ● ¿Qué complicación tiene este algoritmo?
  • 9. Método Burbuja ● Cada recorrido efectúa n-1 comparaciones y como máximo n-1 intercambios. ● Cada ordenación requiere n-1 recorridos. ● Por lo tanto, cada ordenación requiere intercambios máximos de: (n-1) * (n-1) = (n-1)^2
  • 10. Método Burbuja - Algoritmo 2
  • 11. Método Burbuja - Algoritmo 2 ● Mejora la velocidad de ejecución. ● Ya que el valor más grande siempre se mueve al final de la lista, se puede evitar hacer la comparación con los valores ya ubicados. ● Evita realizar n-1 comparaciones en cada recorrido, ● Por ello se optimiza el primer algoritmo para realizar n-i comparaciones.
  • 12. Método Burbuja - Algoritmo 3
  • 13. Método Burbuja - Algoritmo 3 ● Se mantienen las mejoras del Algoritmo 2. ● Se incluye una bandera que verifica si existió por lo menos un intercambio en el recorrido. ● Si no hubo intercambio, el arreglo ya está ordenado por lo que se detiene el procesamiento.
  • 15. Ordenamiento por Inserción ● También se conoce como “Método de baraja” porque es utilizado por los jugadores de cartas. ● El método consiste en insertar el elemento evaluado en la posición correspondiente dentro de una parte ya ordenada del listado. ● Se debe de realizar un corrimiento de los elementos posteriores. ● Se realiza un recorrido desde el segundo elemento hasta el final y cada elemento es insertado en la posición adecuada dentro del segmento inicial del listado.
  • 16. Ordenamiento por Inserción ● Ejemplo de inserción en sección ya ordenada.
  • 17. Ordenamiento por Inserción ● Bosquejo del Algoritmo de Ordenamiento por Inserción
  • 20. Asistencia ● Toma de asistencia.
  • 21. Gracias por su atención