martes, 25 de octubre de 2011

Algoritmos de ordenamiento

Los algoritmos de ordenamiento nos permien como su nombre nos indica ordenar; una de sus aplicaciones puede ser ordenar vectores o matrices con valores asignados aleatoriamente, de ellos se puede analizar la cantidad de comparaciones que suceden, el tiempo que demora. Se pueden clasificar segun el lugar donde se realice la ordenacion como lo son los de ordenamiento interno(en la memoria del ordenador) y los de ordenamiento externo tambien por el tiempo que tardan en natural o no natural.

TIPOS DE ALGORITMOS

Para poder ordenar una cantidad de numeros almacenadas en un vector o matriz, existen distintos algoritmos con distintas caracteristicas y complejidad. Existe desde el metodo mas simple como el Bubblesort (metodo burbuja) que son simples iteraciones hasta el Quicksort (Metodo Rapido).


Metodos Iterativos

Estos metodos son simples de entender y de programas ya que son iterativos, simples ciclos de sentencias que hacen que el vector pueda ser ordenado entre estos encontramos el Burbuja, Inserccion, Seleccion, Shellsort.

Metodos Recursivos

requieren de mayor atencion y conocimiento para ser entendidos, utilizan generalmente la tecnica Divide y Venceras, que consiste en dividir un problema grande en varios pequeños para que sea mas facil resolverlos entre estos encontramos el ordenamiento por mezclas y el Rapido.

Metodo de la Burbuja
El metodo de la burbuja es uno de los mas simples, es tan facil como comparar todos
los elementos de una lista contra todos, si se cumple que uno es mayor o menor a otro, entonces los intercambia de posicion.

Por ejemeplo, imaginemos que tenemos los siguientes valores:

[5 6 1 0 3]

Lo que haria una burbuja simple, seria comenzar recorriendo los valores de izq. a
derecha, comenzando por el 5. Lo compara con el 6, con el 1, con el 0 y con el 3, si
es mayor o menor (dependiendo si el orden es ascendiente o descendiente) se
intercambian de posicion. Luego continua con el siguiente, con el 6, y lo compara con
todos los elementos de la lista, esperando ver si se cumple o no la misma condicion
que con el primer elemento. Asi, sucesivamente, hasta el ultimo elemento de la lista.

Burbuja Simple

la burbuja mas simple de todas es la que compara todos con todos, generando comparaciones extras, por ejemplo, no tiene sentido que se compare con sigo mismo o que se compare con los valores anteriores a el, ya que supuestamente, ya estan ordenados.


Burbuja optimizada

hecho que los elementos que estan detras del que se esta comparando, ya estan ordenados,
las comparaciones serian aun menos y el metodo seria aun mas efectivo.
Si tenemos una lista de 10 elementos y estamos analizando el quinto elemento, que
sentido tiene que el quinto se compare con el primero, el segundo o el tercero, si
supuestamente, ya estan ordenados? Entonces optimizamos mas aun el algoritmo,
quedando nuestra version final del algoritmo optimizado de la siguiente manera:








Bibliografia:
*http://es.wikipedia.org/wiki/Algoritmo_de_ordenamiento
*http://cc.bingj.com/cache.aspx?q=algoritmos+de+ordenamiento&d=4673899702322279&mkt=es-xl&setlang=es-xl&w=da6ce431,a5eb6788

Vistas de página en total