Solo Era Para Suscribirme XD
Enviado por gaaraxD • 4 de Julio de 2012 • 899 Palabras (4 Páginas) • 542 Visitas
MÉTODO RECURSIVO
Estos metodos son aún mas complejos, requieren de mayor atención y conocimiento para ser entendidos. Son rápidos y efectivos, utilizan generalmente la técnica o uno de los dichos mas famosos en cuanto a la programación o bueno en las clases vistas de programación anteriores que es "Divide y vencerás", que consiste en dividir un problema grande en varios pequeños para que sea más fácil resolverlos.
como fue dicho antes estos son mas efectivos y óptimos en la ejecución:
►QUICKSORT
Es un algoritmo de clasificación simple e ingenioso que lo que haces tomar un elemento determinado, el cual es llamado pivote, y después de dividir la lista en dos listas valga la rebudancia, una que son los elementos menor al pivote y otra que son los mayores o igual al pivote. Cada lista está ordenada de forma recursiva a continuación.
Una vez dividida, lo que hace, es dejar todos los mayores que el pivote a su derecha y todos los menores a su izquierda. Al finalizar el algoritmo, nuestros elementos estan ordenados.
Pasos para hallar pivote y listas de división:
a. se recorre el vector, de izquierda a derecha, hasta encontrar un elemento situado en una posición i tal que sea v[i]>pivote.
b. se recorre el vector, de izquierda a derecha, hasta encontra un elemento situado en una posición j tal que sea v[j]
c. se intercambia los elementos situados en las casillas i y j (de modo que, ahora,v[i]
►MERGESORT
En este algoritmo los elementos de la clasificación se almacenan en una colección. Esta colección se divide en dos colecciones y éstas se ordenan. Una vez que las dos colecciones se ordenan a continuación, el resultado se combina
Mergesort tendrá la mitad de la colección y toma entonces la colección dos para la siguiente iteración de mergesort. En la parte mergesort fusión corre a través de las colecciones de ambas y selecciona la menor de las dos de introducirlo en una nueva colección.
Resumiendo:
La combinación funciona de la siguiente manera:
1) Divida la lista desordenada en dos sublistas de la mitad del tamaño
2) Ordenar cada uno de los dos sublistas.
3) Combinar las dos sublistas ordenados de nuevo en una lista ordenada.
En comparación con quicksort es que es mas simple mientras que en mergesort la fusión es mas compleja. Además quicksort puede trabajar "en línea", por ejemplo, no tiene que crear una copia de la colección, mientras que mergesort requiere una copia.
NOTAS:
El algoritmo de Mergesort fue inventado por John von Neumann en 1945.
El algoritmo de quicksort es mas rapido que el mergesort
BIBLIOGRAFIA:
http://en.literateprograms.org/Quicksort_(Java)
http://elvex.ugr.es/decsai/java/pdf/6B-Sort.pdf
http://www.elmundodejava.es/tag/quicksort/
http://www.di.uniovi.es/~dani/asignaturas/transparencias-leccion16.PDF
http://www.java-tips.org/java-se-tips/java.lang/merge-sort-implementation-in-java.html
http://www.vogella.de/articles/JavaAlgorithmsMergesort/article.html
http://snippets-tricks.org/mergesort/
Publicado por Wilver Quintero M en 18:26 Sin comentarios:
ALGORITMOS DE ORDENAMIENTO
ALGORITMOS DE ORDENAMIENTO
Bueno estos algoritmos cumplen una función importante que
...