Los recursos de Internet en el poder de tus manos
Este dÃa solo vengo de rapido para postear algunos programas que he estado haciendo de tareas en la escuela. Y pues lo hago de rápido ya que mañana tengo examen de desarrollo de proyectos y sinceramente no he estudiado nada :S jeje asà que pues aquà esta algo rápido.
Este es el ordenamiento Quick Sort (en español ordenamiento rápido) y como su nombre lo indica, es el ordenamiento más eficiente y eficaz de todos, y por obviedad el más rápido. Este es un algoritmo algo sencillo, una vez que entiendes el tema de recursividad, se te hará fácil entender su funcionamiento.
Vamos con la explicación rápida:
- El vector desordenado es enviado a la función "quicksort()"
- Al llegarle el vector a la función, se toma el primer elemento del vector (o cualquiera; Nota: en nuestro caso tomamos el primero) y se considera ese elemento como "pivote" o "comodÃn".
- Después se recorre todo el vector; durante el recorrido, se va buscando los numeros menores que el pivote, sà el elemento del vector en una vuelta es menor que el pivote, entonces se manda a la izquierda del pivote, de lo contrario no se hace nada. Esto provocará que después de recorrer todo el vector, todos los elementos menores que el pivote quedarán a la izquierda de este y los mayores al pivote a la derecha.
- Se envÃa recursivamente la mitad izquierda del vector (números menores que el pivote sin tomar en cuenta el mismo pivote) a la función quicksort
- Se envÃa recursivamente la mitad derecha del vector (números mayores que el pivote sin tomar en cuenta el mismo pivote) a la función quicksort
Pero una imagen dice más que mil palabras:
Y este es el código:
Como verás el código está debidamente comentado. Cualquier problema, duda o sugerencia por favor coméntalo aquÃ.
Aquà te dejo la descarga completa para que veas su funcionamiento.
Este blog tiene la intensión de facilitarle al lector el gran contenido existente en internet en sus amplias y variadas temáticas como el ocio, los videojuegos, peliculas, series, autos, recetas, descargas, recomendaciones, programaciones y cualquier cosa que se me valla ocurriendo con el tiempo. Tengo la intensión de estar actualizando el blog constantemente y así proporcionarle la mejor información al lector.
Cualquier duda, comentario o sugerencia por favor escríbeme a este Email
Dejar comentario