Upload
florian-cochachin-mallqui
View
10
Download
0
Embed Size (px)
Citation preview
ORDENAMIENTOS INTERNOS Y EXTERNOS | 2
1. Indice
1. Indice 2
2. Introducción 3
3. Objetivos 3
4. Analisis 4
4.1. Ordenamiento Interno 4
4.1.1 Burbuja 4
4.1.1.1. Burbuja Menor 4
4.1.1.2. Burbuja Mayor 5
4.1.1.3. Burbuja Señal 6
Manual del Usuario 16
Conclusiones ¡Error! Marcador no definido.
Bibliografia 18
ORDENAMIENTOS INTERNOS Y EXTERNOS | 3
2. Introducción
Cuando a uno tiene que ordenar datos, ya sean registros de ventas de clientes o resultados de notas asociadas
rescpectivamente a cada alumno, etc. Siempre se choca con la gran dificultad de ir ubicando uno por uno el
posicion que le corresponde a cada elemento, si la cantidad de datos a ordenar no es mucha, uno podria
ordenar asta 50 datos manualmente con la minima probabilidad de equivocarse; sin embargo si cantidad de
datos la supera como 100 o 1000 datos, una persona promedio no podria ordenarlos de manera eficaz, cabria el
riesgo de que se equivoque en la posicion de alguno de los elementos y de que se tomo demasiado tiempo en
realizar dicha actividad, por eso desde la aparcion de los computadores el hombre fue desarrollando algoritmos
que faciliten esta tarea demasiada complicada en cuanto a cantidad se trata. Poco a poco los algoritmos de
ordenamiento fueron evolucionando para convertirse en lo que son ahora, si bien en este trabajo mostraremos
algunas de las clasicas formas de ordenamiento interno y externo, veremos que algunos son mas eficaces y
eficientes que otros dependiendo del factor cantidad de datos, o ambiente en el que se opera.
Dia a dia estos algoritmos son estudiados cada vez más y más; para la mejor operación de las grandes
multinacionales en el mundo, para gestionar espacio y tiempo, factores que son esenciales en este mundo
globalizado, y como estudiantes de Ingenieria de Software no somos la excepción, nosotros tambien somos
desarroladores de software y como desarrolladores en su debido momento tambien aportaremos a la
investigacion de este historico y beneficioso tema .
3. Objetivos
Tratar de marcar las diferencias de tiempos al momento de realizar los metodos de ordenamiento.
Iterar con 5,10,100 mil o mas datos, definir que metodos son mas eficases y eficientes con respecto a la
cantidad de datos que se trabajan.
Saber impementar los metodos correctos de ordenamientos al momento de desarrollar un programa
saber diferenciar en que momento usar uno de estos metodos.
Ampliar la gama de conocimentos con respecto a los diferentes algoritmos de ordenamiento internos y
externos.
Poder desarrollar y mejorar algunos de estos algoritmos.
ORDENAMIENTOS INTERNOS Y EXTERNOS | 4
4. Analisis
4.1. Ordenamiento Interno
4.1.1 Método Burbuja
4.1.1.1. Burbuja Menor
Se tienen los siguientes elementos : 14 58 7 19 47 30 11 41
Primera Iteracion:
A[6] > A[7] (11 > 41) no hay cambio
A[5] > A[6] (30 > 11) si hay cambio
A[4] > A[5] (47 > 11) si hay cambio
A[3] > A[4] (19 > 11) si hay cambio
A[2] > A[3] (7 > 11) no hay cambio
A[1] > A[2] (58 > 7) si hay cambio
A[0] > A[1] (14 > 7) si hay cambio
El arreglo queda de la siguiente forma:
7 14 58 11 19 47 30 41
Podemos apreciar que el valor mas pequeño del arreglo, el numero 7, se desplaza al extremo de la
izquierda.
Segunda Iteracion:
A[6] > A[7] (30 > 41) no hay cambio
A[5] > A[6] (47 > 30) si hay cambio
A[4] > A[5] (19 > 30) no hay cambio
A[3] > A[4] (11 > 19) no hay cambio
A[2] > A[3] (58 > 11) si hay cambio
A[1] > A[2] (14 > 11) si hay cambio
El arreglo queda de la siguiente forma:
7 11 14 58 19 30 47 41
Ahora el segundo elemento de menor valor, el numero 12, es situado en la posicion que le corresponde
ORDENAMIENTOS INTERNOS Y EXTERNOS | 5
Aquí mostramos el resultado despues de todas las iteraciones a realizar
3era pasada: 7 11 14 19 58 30 41 47
4ta pasada: 7 11 14 19 30 58 41 47
5ta pasada: 7 11 14 19 30 41 58 47
6ta pasada: 7 11 14 19 30 41 47 58
7ma pasada: 7 11 14 19 30 41 47 58
4.1.1.2. Burbuja Mayor
Del arreglo anterior: 14 58 7 19 47 30 11 41
Primera Iteracion:
A[0] > A[1] (14 > 58) no hay cambio
A[1] > A[2] (58 > 7) si hay cambio
A[2] > A[3] (58 > 19) si hay cambio
A[3] > A[4] (58 > 47) si hay cambio
A[4] > A[5] (58 > 30) si hay cambio
A[5] > A[6] (58 > 11) si hay cambio
A[6] > A[7] (58 > 41) si hay cambio
El arreglo queda de la siguiente forma:
14 7 19 47 30 11 41 58
Podemos apreciar que el valor mas grande del arreglo, el numero 58, se desplaza al extremo de la
derecho.
Segunda Iteracion:
A[0] > A[1] (14 > 7) si hay cambio
A[1] > A[2] (14 > 19) no hay cambio
A[2] > A[3] (19 > 47) no hay cambio
A[3] > A[4] (47 > 30) si hay cambio
A[4] > A[5] (47 > 11) si hay cambio
A[5] > A[6] (47 > 41) si hay cambio
ORDENAMIENTOS INTERNOS Y EXTERNOS | 6
El arreglo queda de la siguiente forma:
7 14 19 30 11 41 47 58
Ahora el segundo elemento de mayor valor, el numero 12, es situado en la posicion que le corresponde
Aquí mostramos el resultado despues de todas las iteraciones a realizar
3era pasada: 7 14 19 11 30 41 47 58
4ta pasada: 7 14 11 19 30 41 47 58
5ta pasada: 7 11 14 19 30 41 47 58
6ta pasada: 7 11 14 19 30 41 47 58
7ma pasada: 7 11 14 19 30 41 47 58
4.1.1.3. Burbuja Señal
La idea central de este algoritmo es dar una señal si el arreglo ya estaba ordenado en una de las
iteraciones, el algoritmo ordena de la misma forma que el Burbuja Mayor.
ANALISIS DE EFICIENCIA DEL MÉTODO BURBUJA
El número de comparaciones que se realizan en el método de la burbuja se puede contabilizar fácilmente.
En la primera pasada se realizan (n-1) comparaciones, en la segunda pasada (n-2) comparaciones, en la
tercera pasada (n-3) comparaciones y así sucesivamente hasta llegar a 2 y 1 comparaciones entre claves,
siendo n el número de elementos del arreglo. Por lo tanto, tenemos que el número de comparaciones es:
𝐶 =𝑛2 – n
2
Respecto al numero de movimientos, estos dependen fundamentalmente de si el arreglo se encuentra
ordenado, desordenado o en el orden inverso. Los movientos para cada uno de estos casos son:
𝑀𝑚í𝑛 = 0 𝑀𝑚𝑒𝑑 = 0.75 ∗ (𝑛2 − 2) 𝑀𝑚á𝑥 = 1.5 ∗ (𝑛2 − 2)
Ahora bien, el tiempo necesario para ejecutar el algoritmo de la burbuja es proporcional a n2,O(n2),
donde n es el numero de elementos de arreglo.
ORDENAMIENTOS INTERNOS Y EXTERNOS | 7
4.1.2. Método de la Sacudida (shaker sort)
Se tienen los siguientes elementos : 14 58 7 19 47 30 11 41
Primera Iteracion:
PRIMERA ETAPA (de derecha a izquierda)
A[6] > A[7] (11 > 41) no hay cambio
A[5] > A[6] (30 > 11) si hay cambio
A[4] > A[5] (47 > 11) si hay cambio
A[3] > A[4] (19 > 11) si hay cambio
A[2] > A[3] (7 > 11) no hay cambio
A[1] > A[2] (58 > 7) si hay cambio
A[0] > A[1] (14 > 7) si hay cambio
El arreglo queda de la siguiente forma en su primera etapa:
7 14 58 11 19 47 30 41
SEGUNDA ETAPA (de izquierda a derecha)
A[1] > A[2] (14 > 58) no hay cambio
A[2] > A[3] (58 > 11) si hay cambio
A[3] > A[4] (58 > 19) si hay cambio
A[4] > A[5] (58 > 47) si hay cambio
A[5] > A[6] (58 > 30) si hay cambio
A[6] > A[7] (58 > 41) si hay cambio
El arreglo queda de la siguiente forma en su segunda etapa:
7 14 11 19 47 30 41 58
Podemos apreciar que el mayor y el menor elemento ya estan posicionados donde les corresponde, luego
procedemos con los siguientes elementos de la misma forma
ORDENAMIENTOS INTERNOS Y EXTERNOS | 8
Segunda Iteracion:
PRIMERA ETAPA (de derecha a izquierda)
A[5] > A[6] (30 > 41) no hay cambio
A[4] > A[5] (47 > 30) si hay cambio
A[3] > A[4] (19 > 30) no hay cambio
A[2] > A[3] (11 > 19) no hay cambio
A[1] > A[2] (14 > 11) si hay cambio
El arreglo queda de la siguiente forma en su primera etapa:
7 11 14 19 30 47 41 58
SEGUNDA ETAPA (de izquierda a derecha)
A[2] > A[3] (14 > 19) no hay cambio
A[3] > A[4] (19 > 30) no hay cambio
A[4] > A[5] (30 > 47) no hay cambio
A[5] > A[6] (47 > 41) si hay cambio
El arreglo queda de la siguiente forma en su segunda etapa:
7 11 14 19 30 41 47 58
Podemos apreciar que al realizar la primera etapa de la tercera pasada se observa que no se realizan cambios; por
lo tanto, la ejecucion del algoritni se termina.
ANALISIS DE EFICIENCIA DEL MÉTODO DE LA SACUDIDA
El análisis de este método, y en general el de los métodos mejorados y logarítmicos, es muy complejo.
Para el análisis es necesario tener en cuenta tres factores que afectan directamente al tiempo de ejecución del
algoritmo: las comparaciones entre las claves, los intercambios entre ellas y las pasadas que se realizan. Encontrar
fórmulas que permitan calcular cada uno de estos factores es una tarea muy difícil de realizar.
Los estudios que se han efectuado sobre el método de la sacudida demuestran que el solo se pueden
reproducir las dobles comparaciones entre claves, pero se debe recordar que la operación de intercambio es una
tarea más complicada y costosa que la comparación. Por lo tanto, es posible afirmar que las hábiles mejoras
realizadas sobre el método de intercambio directo solo producen resultados apreciables si el arreglo está
parcialmente ordenado, lo cual resulta difícil saber de antemano ; pero si el arreglo esta desordenado el método
se comporta, incluso peor que otros métodos directos, como los de inserción y selección.
ORDENAMIENTOS INTERNOS Y EXTERNOS | 9
4.1.3. Método de Inserción directa
Se tienen los siguientes elementos : 14 58 7 19 47 30 11 41
Primera Iteracion:
A[1] < A[0] (58 < 14) no hay cambio
14 58 7 19 47 30 11 41
Segunda Iteracion:
A[2] < A[1] (7 < 58) si hay cambio
A[1] < A[0] (7 < 14) si hay cambio
7 14 58 19 47 30 11 41
Tercera Iteracion:
A[3] < A[2] (19 < 58) si hay cambio
A[2] < A[1] (19 < 14) no hay cambio
7 14 19 58 47 30 11 41
Podemos apreciar que una vez que se determina la posición correcta del elemento se interrumpen las
comparaciones. Por ejemplo, para el caso de anterior no se realizó la comparación A[1] < A[0].
Y este seria el resultado de las siguientes iteraciones:
4ta pasada: 7 14 19 47 58 30 11 41
5ta pasada: 7 14 19 30 47 58 11 41
6ta pasada: 7 11 14 19 30 47 58 41
7ma pasada: 7 11 14 19 30 41 47 58
ANALISIS DE EFICIENCIA DEL MÉTODO DE INSERCION DIRECTA
El número mínimo de comparaciones y movimientos entre claves se produce cuando los elementos de arreglo ya
están ordenados. En general podemos afirmar que si el arreglo se encuentra ordenado se efectúa como máximo
n-1 comparaciones y 0 movimientos entre elementos.
𝐶𝑚í𝑛 = 𝑛 − 1
ORDENAMIENTOS INTERNOS Y EXTERNOS | 10
El número maximo de comparaciones y movimientos entre los elementos se produce cuando el arreglo estan en
orden inverso
𝐶𝑚á𝑥 = 𝑛2 − 𝑛
Si bien, el número de comparaciones promedio, que es cuando los elementos aparecen en el arreglo en forma
aleatoria, se puede calcular mediante la suma de las comparcaiones minimas y maximas dividida entre 2.
𝐶𝑚𝑒𝑑 =𝑛2+𝑛−2
4
Respecto de numero de movimientos, si el arreglo se encuentra ordenado no se realiza ninguno.Por lo tanto:
𝑀𝑚í𝑛 = 0
El numero maximo de movimientos se presenta cuando el arreglo esta en orden inverso. En la primera iteracion se
realiza un movimieto en la segunda dos y asi sucesivamente n-1 movimientos entra los elementos en la ultima
pasada.por lo tanto:
𝑀𝑚á𝑥 =𝑛2−𝑛
2
El numero de movientos promnedio, que se da cuando los elementos se encuentra en el arreglo en forma
aleatoria, se calcula como la suma de los movientos minimos y maximos divididos entre 2. Por lo tanto:
𝑀𝑚𝑒𝑑 =𝑛2−𝑛
4
4.1.4. Método de Inserción binaria
Se tienen los siguientes elementos : 14 58 7 19 47 30 11 41
Primera Iteracion:
A[1] < A[0] (58 < 14) no hay cambio
14 58 7 19 47 30 11 41
Segunda Iteracion:
A[2] < A[0] (7 < 14) si hay cambio
7 14 58 19 47 30 11 41
Tercera Iteracion:
A[3] < A[1] (19 < 14) no hay cambio
A[3] < A[2] (19 < 58) si hay cambio
7 14 19 58 47 30 11 41
ORDENAMIENTOS INTERNOS Y EXTERNOS | 11
Cuarta Iteracion:
A[4] < A[1] (47 < 14) no hay cambio
A[4] < A[2] (47 < 19) no hay cambio
A[4] < A[3] (47 < 58) si hay cambio
7 14 19 47 58 30 11 41
Quinta Iteracion:
A[5] < A[2] (47 < 19) no hay cambio
A[5] < A[3] (47 < 58) si hay cambio
7 14 19 30 47 58 11 41
Sexta Iteración:
A[6] < A[2] (11 < 19) si hay cambio
A[6] < A[0] (11 < 7) no hay cambio
A[6] < A[1] (11 < 14) si hay cambio
7 11 14 19 30 47 58 41
Séptima Iteración:
A[7] < A[3] (41 < 19) no hay cambio
A[7] < A[5] (41 < 47) si hay cambio
A[7] < A[4] (41 < 30) no hay cambio
7 11 14 19 30 41 47 58
ANALISIS DE EFICIENCIA DEL MÉTODO DE INSERCION BINARIA
Al analizar el método de ordenación por inserción binaria se advierte la presencia de un caso antinatural. El
método efectúa el menor número de comparaciones cuando el arreglo está totalmente desordenado y el máximo
cuando se encuentra ordenado.
Es posible suponer que mientras en una búsqueda secuencial se necesita K comparaciones para insertar un
elemento, en una binaria se necesitara la mitad de las K comparaciones. Por lo tanto, el número de comparaciones
promedio en el método de ordenación por inserción binaria se puede calcular como:
𝐶 =𝑛2−𝑛
4
ORDENAMIENTOS INTERNOS Y EXTERNOS | 12
Este es un algoritmo de comportamiento antinatural y, por lo tanto, es necesario ser muy cuidadoso cuando se
hace un análisis de él. Las hábiles mejoras introducidas producen un efecto negativo cuando el arreglo esta
ordenado y resultados apenas satisfactorios cuando las claves están desordenadas. De todas maneras. Se debe
recordar que no se reduce el número de movimientos que es una operación más complicada y costosa que la
operación de comparación. Por lo tanto, el tiempo de ejecución del algoritmo sigue siendo proporcional a n2,
O(n2).
4.1.5. Método de selección directa
Se tienen los siguientes elementos : 14 58 7 19 47 30 11 41
Primera Iteración:
Se realiza la asignación: MENOR ← A[0] (14)
(MENOR < A[1]) (14<58) Sí se cumple la condición
(MENOR < A[2]) (14<7) No se cumple la condición MENOR ← A[2] (7)
(MENOR < A[3]) (7<19) Sí se cumple la condición
(MENOR < A[4]) (7<47) Sí se cumple la condición
(MENOR < A[5]) (7<30) Sí se cumple la condición
(MENOR < A[6]) (7<11) Sí se cumple la condición
(MENOR < A[7]) (7<41) Sí se cumple la condición
Luego de la primera iteración, el arreglo queda de la siguiente forma:
7 58 14 19 47 30 11 41
Podemos observar que el menor elemento del arreglo A[2] (7) se intercambio con el primer elemento A[0] (14),
realizando solamente un movimiento.
Segunda Iteración:
Se realiza la asignación: MENOR ← A[1] (58)
(MENOR < A[2]) (58<14) No se cumple la condición MENOR ← A[2] (14)
(MENOR < A[3]) (14<19) Si se cumple la condición
(MENOR < A[4]) (14<47) Si se cumple la condición
(MENOR < A[5]) (14<30) Si se cumple la condición
(MENOR < A[6]) (14<11) No se cumple la condición MENOR ← A[6] (11)
(MENOR < A[7]) (11<41) Si se cumple la condición
ORDENAMIENTOS INTERNOS Y EXTERNOS | 13
7 11 14 19 47 30 58 41
Podemos observar que el segundo menor elemento del arreglo A[6] (11) se intercambio con el segundo elemento
A[1] (58).
Y este seria el resultado de las siguientes iteraciones:
3era pasada: 7 11 14 19 47 30 58 41
4ta pasada: 7 11 14 19 47 30 58 41
5ta pasada: 7 11 14 19 30 47 58 41
6ta pasada: 7 11 14 19 30 41 58 47
7ma pasada: 7 11 14 19 30 41 47 58
ANALISIS DE EFICIENCIA DEL MÉTODO DE SELECCIÓN DIRECTA
El analisis del metodo de selección directa es relativamente simple. Se debe considerar que el numero de
comparaciones entre elementos es independiente de la disposicion inicial de de estps en el arreglo. En la primera
iteracion se realizan (n-2) comparaciones y asi sucesivamente hasta 2 y 1 comparaciones en la penultima y ultima
iteracion, respectivamente. Por lo tanto:
𝐶 =𝑛2−𝑛
2
Respecto del número de intercambios, siempre será n-1, a excepción de que se tenga incorporada en el algoritmo
alguna técnica para prevenir el intercambio de un elemento consigo mismo. Por lo tanto:
𝑀 = 𝑛 − 1
El tiempo de ejecución del algoritmo es proporcional al n2, O(n2), aun cuando es más rápido que los métodos
presentados con anterioridad.
4.1.6. Intercalación de archivos
Se entiende la unión o fusión de dos archivos ordenados de acuerdo con un determinado campo clave, en solo
archivo, analicemos el siguiente ejemplo:
Supongamos que se tiene dos archivos, F1, F2, cuya información está ordenada de acuerdo con un campo clave:
F1: 06 09 18 20 35
F2: 10 16 25 28 66 82 87
ORDENAMIENTOS INTERNOS Y EXTERNOS | 14
Se debe producir, entonces, un archivo F3 ordenado, como resultado de la mezclas de F1 y F2. Solo se puede
acceder en forma directa dos claves, primera del archivo F1 y la segunda del archivo F2. La comparación que se
realizan para producir el archivo F3 son:
(06 < 10) Si se cumple la condición
Se escribe 06 en el archivo de salida F3 y se vuelve a leer la otra clave de F1 (18)
(09 < 10)Sí cumple la condición
Se escribe 09 en el archivo de salida F3 y se vuelve a leer otra clave de F1 (18)
(18 < 10) No se cumple la condición
Se escribe 10 en el archivo de salida F3 se vuelve a leer otra clave de F2 (16)
El estado de los archivos F1, F2 y F3, hasta el momento, es como se muestra más abajo. La flecha de la señal el
último elemento leído de los archivos que se están intercalando.
F1: 06 09 18 20 35
F2: 10 16 25 28 66 82 87
F3: 06 09 10
El proceso continúa hasta que en uno u otro archivo se detecte su final; en tal caso sólo se tendrá que copiar la
información del archivo no vacío al archivo de salida F3. El resultado final de la información entre los archivos F1 y
F2 es:
F3: 06 09 10 16 18 20 25 28 35 66 82 87
4.1.7. Ordenación por mezcla directa
Suponemos que deseamos ordenar las claves de archivo F. Para realizar tal actividad se crean dos archivos
auxiliares a los que se les denominará F1 y F2.
F: 09 75 14 68 29 17 31 25 04 05 13 18 72 46 61
Primera pasada:
Partición en secuencia de longitud 1.
F: 09 75 14 68 29 17 31 25 04 05 13 18 72 46 61
F1: 09 14 29 31 04 13 72 61
F2: 75 68 17 25 05 18 46
Fusión en secuencias de longitud 2
F: 09 75 14 68 17 29 25 31 04 05 13 18 46 72 61
Segunda pasada:
ORDENAMIENTOS INTERNOS Y EXTERNOS | 15
Partición en secuencia de longitud 2
F1: 09 75 17 29 04 05 46 72
F2: 14 68 25 31 13 18 61
Fusión en secuencia de longitud 4
F: 09 14 68 75 17 25 29 31 04 05 13 18 46 61 72
Tercera pasada:
Partición en secuencia de longitud 4
F1: 09 14 68 75 04 05 13 18
F2: 17 25 29 31 46 61 72
Fusión en secuencia de longitud 8
F: 09 14 17 25 29 31 68 75 04 05 13 18 46 61 72
Cuarta pasada:
Partición en secuencia de longitud 8
F1: 09 14 17 25 29 31 68 75
F2: 04 05 13 18 46 61 72
Fusión en secuencia de longitud 16
F: 04 05 09 13 14 17 18 25 29 31 46 61 68 72 75
4.1.8. Ordenación por el método de mezcla equilibrada
Supones que se desea ordenar las claves de los archivo F utilizando el método de la mezcla equilibrada.
F: 09 75 14 68 29 17 31 25 04 05 13 18 72 46 61
III=> grupos de secuencia ordenada III=> grupo de secuencias ordenadas
Los pasos que se realizan son:
Partición inicial:
F2: 09 75 29 25 46 61
F3: 14 68 17 31 04 05 13 18 72
Primera fusión-partición
F: 09 14 68 75 04 05 13 18 25 46 61 72
F1: 17 29 31
Segunda fusión de partición:
ORDENAMIENTOS INTERNOS Y EXTERNOS | 16
F2: 09 14 17 29 31 68 75
F3: 04 05 13 18 25 46 61 72
Tercera fusión de partición:
F: 04 05 09 13 14 17 18 25 29 31 46 61 68 72 75
F1:
Se observa que al realizar la tercera fusión- partición el segundo archivo queda vacío: por lo tanto, se puede
afirmar que el archivo ya se encuentra ordenado.
Manual del Usuario
Haga clic aquí para introducir el texto.
Haga clic aquí para introducir el texto.
Al igual que en el caso del Resumen ejecutivo en la página 2, el primer párrafo de este marcador es texto normal del cuerpo
que utiliza el estilo Normal predeterminado. Este párrafo utiliza el estilo Normal \endash Espacio detrás para crear espacio
antes de la tabla siguiente.
ORDENAMIENTOS INTERNOS Y EXTERNOS | 17
Manual de usuario
Introducción
Es una aplicación desarrollado en lenguaje C, tiene como principal funcionalidad mostrar al usuario mediante una
lista detallada, el tiempo de ejecución de los diferentes tipos de algoritmos de ordenamiento tanto internos como
externos.
De esa manera mostrarle al usuario el comportamiento de los algoritmos de ordenamiento, en función a los datos
que procesa.
Requisitos del sistema
La aplicación es multiplataforma, principalmente orientado a la plataforma Windows de 32 bits.
Como operar o navegar el sistema
Al momento poner en operación la aplicación, él generará automáticamente 3 arreglos de 5000, 40000 y 75 000
datos para su procesamiento, y luego aparecerá en la pantalla uno a uno los procesos terminados, indicando el
tiempo en (ms) que le tomo realizar la operación. Para los algoritmos de ordenamiento externo la aplicación
cuenta con 3 archivos de 1000, 5000 y 10000 datos de formato CSV, para realizar las pruebas respectivas.
Por consiguiente el usuario con tan solo hacer un clic, tendrá a su disposición información oportuna sobre el
comportamiento de los algoritmos de ordenamiento, y así poder decidir el adecuado uso de los algoritmos.
Conclusiones
1. La aplicación es muy sencilla de usarlo no requiere un usuario especializado.
2. Es una herramienta adecuada para el buen uso de los algoritmos, al momento de desarrollar aplicaciones
donde estas manejen gran o mediana cantidad de datos.
Conclusiones
al marcar los tiempos de procesamiento de cada algoritmo, se vuelve a reafirmar que el algoritmo menos
eficiente es el algoritmo de la burbuja, Y el más eficiente es el QuickSort con un tiempo muy pequeño comparado
con los otros algoritmos.
Los algoritmos internos son más rápidos en procesar, los datos, sin embargo los algoritmos externos requieren
más tiempo para procesar los datos del mismo tamaño, esto es debido a que la memoria principal es más rápida
que los dispositivos de almacenamiento secundario como los discos duros, y esto hace que el ordenamiento en
archivos se ha mas lento.
Podemos concluir además que a pesar de estar ordenados los archivos, el tiempo del proceso sigue estando en el
mismo rango, esto es debido a que el algoritmo tiene que acceder al dispositivo de almacenamiento para procesar
los datos.
Resultado estadístico es:
ORDENAMIENTOS INTERNOS Y EXTERNOS | 18
Bibliografia
CAIRÓ, Osvaldo y GUARDATI, Silvia, tercera edición, ESTRUCTURA DE DATOS, Mc-Graw Hill, México.
CHERRE, Rafael, 2001, primera edición, LENGUAJE DE PROGRAMACION C/C++ Y C.net, editorial macro,
Lima-Peru.
LIZAMA, Edgar, 2009, primera edición, PROGRAMACION CON C++, fondo editorial UNMSM, Lima-Perú.
JOYANES AGUILAR, Luis, 2008, cuarta edición, FUNDAMENTOS DE PROGRAMACION, ALGORITMOS,
ESTRUCTURA DE DATOS Y OBJETOS, Mc-Graw Hill, Madrid.
JOYANES AGUILAR, Luis, LUCAS SANCHEZ, García, IGNACIO ZAHONERO, Martínez, 2007, primera
edición, ESTRUCTURA DE DATOS EN C++, Mc-Graw Hill, Madrid.
5000
750000
10000
20000
30000
40000
50000
5000 40000 75000