Está en la página 1de 8

Ordenamiento de Datos y Algoritmos de Ordenamiento.

Camilo Carrasco

Análisis de algoritmo

Instituto IACC

14/03/2021
Desarrollo

1- Suponga que tiene que ordenar todas las facturas de un año por mes y día (desde el 1 al

31 de enero, lo mismo para marzo, abril, etc.).

a- ¿Qué algoritmo utilizaría: bubble sort o merge sort? ¿Por qué?

b- Enumere los pasos que haría para un mes.

c- ¿Qué diferencias tendría su solución respecto al algoritmo que no utilizó?

2- Suponga el siguiente conjunto de elementos: {1, 24, 56, 77, 2, 34, 54, 21, 90, 44, 8, 5, 7,

28, 31}

a- Ordénelos utilizando merge sort, quick sort y bubble sort y determine cuál algoritmo

de ordenamiento es más eficiente.

b- Realice un diagrama mostrando cada paso de cada algoritmo hasta que el conjunto

quede ordenado.
1- Suponga que tiene que ordenar todas las facturas de un año por mes y día (desde el 1

al 31 de enero, lo mismo para marzo, abril, etc.).

a. ¿Qué algoritmo utilizaría: bubble sort o merge sort? ¿Por qué?

Para este caso personalmente creo que el algoritmo que debemos utilizar es el de

merge sort, este algoritmo nos garantiza una eficacia al momento de trabajar, este

algoritmo trabaja en diferentes segmentos y luego los une, en este caso se toma en

cuenta los días de los meses y los separa en dos grupos, poco a poco los pequeños

grupos creados deben crear un total único al finalizar el algoritmo.

b. Enumere los pasos que haría para un mes.

1- Se divide en dos grupos los días del mes

2- De forma paralela cada grupo se va dividiendo en dos grupos más hasta

que la división sea uno.

3- Luego del Split se pasa a la lógica de unión con la condición de que para

en cada grupo el menor debe quedar primero

4- Ahora el algoritmo debe funcionar a la inversa y se unirá cada par de los

grupos según el paso anterior

5- El algoritmo compara que el grupo final quede ordenado de menor a

mayor

c. ¿Qué diferencias tendría su solución respecto al algoritmo que no utilizó?

El algoritmo seleccionado tiene las dos etapas de separar y unir, lo cual hace que

el recorrido por cada grupo se haga al unir y separar, esto lo hace que el algoritmo

funcione de manera más eficaz, por otra parte, el algoritmo bubble sort por cada

acción que hace en el algoritmo o en el arreglo este hace el recorrido nuevamente

para comparar x veces para corroborar que la condición ya no genere los cambios.
2- Suponga el siguiente conjunto de elementos: {1, 24, 56, 77, 2, 34, 54, 21, 90, 44, 8, 5,

7, 28, 31}

a. Ordénelos utilizando merge sort, quick sort y bubble sort y determine cuál

algoritmo de ordenamiento es más eficiente.

b. Realice un diagrama mostrando cada paso de cada algoritmo hasta que el

conjunto quede ordenado.

- Merge sort
- Quick sort
- Bubble sort
“En la salida anterior podemos analizar el siguiente comportamiento:

• Los elementos se van cambiando de izquierda a derecha

• La partición ordenada se encontrará del lado derecho e irá creciendo cada que veamos

el log “Change of partition index”

• La partición desordenada se encontrará del lado izquierdo e irá decreciendo cada que

veamos el log “Change of partition index”

• Es posible que antes de que termine el algoritmo el arreglo ya se encuentre ordenado,

pero tiene que terminar la ejecución para asegurarlo.

Características del algoritmo

• No requiere de arreglos adicionales para realizar el ordenamiento

• La complejidad es de O(n²)

• El performance se reduce cuando crece el número de elementos en el arreglo”

CITA: https://devs4j.com/2018/12/19/algoritmo-de-la-burbuja-en-java-bubble-sort/
Bibliografía

a- Material de apoyo IACC

b- Información extra en JAVA sobre el algoritmo bubble sort:

https://devs4j.com/2018/12/19/algoritmo-de-la-burbuja-en-java-bubble-sort/

También podría gustarte