Sunteți pe pagina 1din 5

UNIDAD 5.

METODOS DE ORDENAMIENTO

ALGORITMOS DE ORDENAMIENTO INTERNOS

ORDENACIN POR EL MTODO DE LA BURBUJA Este mtodo consiste en acomodar el vector moviendo el mayor hasta la ltima casilla comenzando desde la casilla cero del vector hasta haber acomodado el nmero ms grande en la ltima posicin, una vez acomodado el ms grande, prosigue a encontrar y acomodar el siguiente ms grande comparando de nuevo los nmeros desde el inicio del vector, y as sigue hasta ordenar todo los elementos el arreglo. Este algoritmo es muy deficiente ya que al ir comparando las casillas para buscar el siguiente ms grande, ste vuelve a comparar las ya ordenadas. A pesar de ser el algoritmo de ordenamiento ms deficiente que hay, ste es el ms usado en todos los lenguajes de programacin.

QUICKSORT En accin sobre una lista de nmeros aleatorios. Las lneas horizontales son valores pivote. En computacin y matemticas un algoritmo de ordenamiento recursivo es un algoritmo que pone elementos de una lista o un vector en una secuencia dada por una relacin de orden, es decir, el resultado de salida ha de ser una permutacin o reordenamiento de la entrada que satisfaga la relacin de orden dada. Las relaciones de orden ms usadas son el orden numrico y el orden lexicogrfico. Ordenamientos eficientes son importantes para optimizar el uso de otros algoritmos (como los de bsqueda y fusin) que requieren listas ordenadas para una ejecucin rpida. Tambin es til para poner datos en forma cannica y para generar resultados legibles por humanos. Desde los comienzos de la computacin, el problema del ordenamiento ha atrado gran cantidad de investigacin, tal vez debido a la complejidad de resolverlo eficientemente a pesar de su planteamiento simple y familiar. Por ejemplo, BubbleSort fue analizado desde 1956.1 Aunque muchos puedan considerarlo un problema resuelto, nuevos y tiles algoritmos de ordenamiento se siguen inventado hasta el da de hoy (por ejemplo, el ordenamiento de biblioteca se public por primera vez en el 2004). Los algoritmos de ordenamiento son comunes en las clases introductorias a la computacin, donde la abundancia de algoritmos para el problema proporciona una gentil introduccin a la variedad

de conceptos ncleo de los algoritmos, como notacin de O mayscula, algoritmos divide y vencers, estructuras de datos, anlisis de los casos peor, mejor, y promedio, y lmites inferiores. SHELLSORT Es un algoritmo de ordenacin interna muy sencillo pero muy ingenioso, basado en comparaciones e intercambios, y con unos resultados radicalmente mejores que los que se pueden obtener con el mtodo de la burbuja, el de seleccin directa o el de insercin directa. Aunque a menudo, es un algoritmo un tanto olvidado por dos motivos: en primer lugar, en los cursos bsicos de programacin se suele pasar por alto o se pasa "de puntillas" por este algoritmo, dado que su comprensin requiere un cierto esfuerzo y algo de tiempo, y se suele centrar la atencin en los tres algoritmos ms bsicos (burbuja, seleccin e insercin); y en segundo lugar, el algoritmo QuickSort, desarrollado por Hoare en 1962 puede dar mejores resultados an que ste, con lo cual, le suele hacer bastante sombra en los temarios de los cursos de programacin bsicos.

RADIX

En informtica, el ordenamiento Radix (radixsort en ingls) es un algoritmo de ordenamiento que ordena enteros procesando sus dgitos de forma individual. Como los enteros pueden representar cadenas de caracteres (por ejemplo, nombres o fechas) y, especialmente, nmeros en punto flotante especialmente formateados, radixsort no est limitado slo a los enteros. La mayor parte de los ordenadores digitales representan internamente todos sus datos como representaciones electrnicas de nmeros binarios, por lo que procesar los dgitos de las representaciones de enteros por representaciones de grupos de dgitos binarios es lo ms conveniente. Existen dos clasificaciones de radixsort: el de dgito menos significativo (LSD) y el de dgito ms significativo (MSD). Radixsort LSD procesa las representaciones de enteros empezando por el dgito menos significativo y movindose hacia el dgito ms significativo. RadixsortMSDtrabaja en sentido contrario.

ALGORITMOS DE ORDENAMIENTO EXTERNO

METODO DE INTERCALACIN
La ordenacin de datos es un proceso muy frecuente en programacin. Esta operacin es tambin un proceso que las personas encuentran comnmente en sus rutinas diarias. Por ejemplo, cada elemento de la coleccin de datos de una agenda telefnica tiene un campo nombre, direccin, y un nmero de telfono. Una coleccin de datos clasificados se puede almacenar en un archivo, un vector o tabla, una lista enlazada o un rbol. Cuando los datos estn almacenados en vectores, tablas (arrays), listas enlazadas o rboles, la ordenacin se denomina ordenacin interna. Cuando los datos a clasificar se encuentran almacenados en archivos, en soportes de almacenamiento masivo (cintas o discos) el proceso de ordenacin se denomina ordenacin externa.INTERCALACINSIMPLESe tienen dos archivos ordenados y se obtiene al final un solo archivo ordenado que contiene los elementos de los dos archivos inciales. Este mtodo utilizado por los jugadores de cartas o naipes para ordenar sus barajas. Consiste en mirar las cartas una a una y cuando se ve cada nueva carta se inserta en el lugar adecuado. Para desarrollar el algoritmo se piensa que las cartas se encuentran situadas en una fila encima del tapete; a medida que se ve una carta nueva, sta se compara con la fila y se debe empujar alguna de ellas a la derecha para dejar espacio e insertar la nueva. Para utilizar el mtodo se inicia con un vector de n posiciones. Comencemos con el subndice i en la segunda posicin incrementando en 1, el elemento del subndice del vector se elimina de la secuencia y se reinserta en el vector en la posicin adecuada. Consideremos un vector de n posiciones. Comencemos con el subndice i en la segunda posicin incrementando en 1, el elemento del subndice del vector se elimina de la secuencia y se reinserta en el vector en la posicin adecuada.Algoritmon=tamao del vectorinti,k,aux;boolean band=false;for (k=1;k < n; k++){aux=vect[k];i=k1;band=false;while( i>=0 && !band ){if(aux<vect){vect=vect;

MEZCLA NATURAL
Las secuencias intermedias no tienen tamao prefijado ni longitud constante. Estas se generan con sus elementos ordenados, separando un elemento nuevo a otra secuencia si no se respeta esta condicin. Se incluyen separadores de secuencia. Una clasificacin por mezcla natural combina, pues, corridas (mximas) en vez de secuencias de longitud fija previamente determinada. Las corridas tienen la propiedad de que, si dos secuencias de n corridas das se combinan, se produce una sola secuencia de exactamente n corridas. Por tanto, el nmero total se divide a la mitad en cada paso y el nmero de movimientos requeridos de elementos es n* [log n] en el peor caso, pero en el caso promedio es menos todava. El nmero previsto de comparaciones es mucho mayor que adems de las que se necesitan para selecionar elementos, se requieren ms entre elementos consecutivos de cada archivo para determinar el final de cada corrida.

MEZCLA DIRECTA
En la mezcla directa no se obtiene ventaja alguna cuando los datos al inicio ya estn parcialmente clasificados. La longitud de todas las subsecuencias combinadas en el k-simo pase es menor o igual que 2k, sin importar si las subsecuencias ms largas ya estn ordenadas o podran tambin combinarse. En efecto, dos subsecuencias ordenadas de longitudes m y n podran combinarse directamente en una sola secuencia de m + n elementos. Una clasificacin por mezcla que en cualquier momento combina las dos subsecuencias ms largas posibles recibe el nombre de clasificacin por mezcla natural. A menudo a la sub secuencia ordenada se le llama cadena. Pero como este trmino se emplea comnmente para designar secuencias de caracteres, seguiremos el criterio de Knuth en nuestra terminologa y utilizaremos la palabra corrida en vez de cadena al referirnos a subsecuencias ordenadas. Llamamos corrida mxima o, simplemente, corrida a una subsecuenciaa1 aj tal que (a-l> a) & (Ak: i:<> k < j: ak:<> ak+l) & (aj > aj+l) (2.25)

CONCLUSIONES PERSONALES:

S-ar putea să vă placă și