Metodos de Ordenamiento c++

13
UNIVERSIDAD MARIANO GALVEZ DE GUATEMALA CENTRO EDUCATIVO RETALHULEU INGENIERIA EN SISTEMAS DE INFORMACION Y CIENCIAS DE LA COMPUTACION III SEMESTRE PROGRAMACION I ING. EDUARDO ECHEVERRIA “METODOS DE ORDENAMIENTO C++” 2890 – 14 – 14513

description

metodos

Transcript of Metodos de Ordenamiento c++

UNIVERSIDAD MARIANO GALVEZ DE GUATEMALACENTRO EDUCATIVO RETALHULEU

INGENIERIA EN SISTEMAS DE INFORMACIONY CIENCIAS DE LA COMPUTACION

III SEMESTRE

PROGRAMACION IING. EDUARDO ECHEVERRIA

METODOS DE ORDENAMIENTO C++

2890 14 14513DAZ HERNNDEZ, YAN CARLOS ANTONIONY

RETALHULEU 13 DE ABRIL DEL 2,015METODOS DE ORDENAMIENTODebido a que las estructuras de datos son utilizadas para almacenar informacin, para poder recuperar esa informacin de manera eficiente es deseable que aquella est ordenada. Existen varios mtodos para ordenar las diferentes estructuras de datos bsicas.En general los mtodos de ordenamiento no son utilizados con frecuencia, en algunos casos slo una vez. Hay mtodos muy simples de implementar que son tiles en los casos en dnde el nmero de elementos a ordenar no es muy grande (ej, menos de 500 elementos). Por otro lado hay mtodos sofisticados, ms difciles de implementar pero que son ms eficientes en cuestin de tiempo de ejecucin.Los mtodos sencillos por lo general requieren de aproximadamente n x n pasos para ordenar n elementos.Los mtodos simples son: insertion sort (o por insercin directa) selection sort, bubble sort, y shellsort, en dnde el ltimo es una extensn al insertion sort, siendo ms rpido. Los mtodos ms complejos son el quick-sort, el heap sort, radix y address-calculation sort. El ordenar un grupo de datos significa mover los datos o sus referencias para que queden en una secuencia tal que represente un orden, el cual puede ser numrico, alfabtico o incluso alfanumrico, ascendente o descendente.

Se ha dicho que el ordenamiento puede efectuarse moviendo los registros con las claves. El mover un registo completo implica un costo, el cual se incrementa conforme sea mayor el tamao del registro. Es por ello que es deseable evitar al mximo el movimiento de los registros. Una alternativa es el crear una tabla de referencias a los registros y mover las referencias y no los datos. A continuacin se mostrarn los mtodos de ordenamiento empezando por el ms sencillo y avanzando hacia los mas sofisticadosLa eficiencia de los algoritmos se mide por el nmero de comparaciones e intercambios que tienen que hacer, es decir, se toma n como el nmero de elementos que tiene el arreglo a ordenar y se dice que un algoritmo realiza O(n2) comparaciones cuando compara n veces los n elementos, n x n = n2.

ORDENAMIENTO DE BURBUJALaOrdenacin de burbuja(Bubble Sorten ingls) es un sencilloalgoritmo de ordenamiento. Funciona revisando cada elemento de la lista que va a ser ordenada con el siguiente, intercambindolos de posicin si estn en el orden equivocado. Es necesario revisar varias veces toda la lista hasta que no se necesiten ms intercambios, lo cual significa que la lista est ordenada. Estealgoritmoobtiene su nombre de la forma con la que suben por la lista los elementos durante los intercambios, como si fueran pequeas "burbujas". Tambin es conocido como elmtodo del intercambio directo. Dado que solo usa comparaciones para operar elementos, se lo considera un algoritmo de comparacin, siendo el ms sencillo de implementar.

burbuja#include#includeint a[3]={3,2,1};int i,j,aux,n=3;void main(){clrscr();for(i=0;i