Está en la página 1de 5

Suele creerse que para obtener altas velocidades de

cálculo basta contar con una computadora de muy alta


velocidad. Sin embargo, lo anterior no es completamente
cierto.
Esto se ilustra con un experimento cuyos resultados
evidencian que un buen algoritmo implementado en una
computadora lenta puede ejecutarse mucho mejor que
un mal algoritmo implementado en una computadora
rápida. Considere los dos algoritmos de ordenamiento, el
ordenamiento por inserción y el algoritmo quick sort
(ordenamiento rápido), que se describen de manera
aproximada a continuación.
El ordenamiento por inserción analiza de izquierda a derecha, uno
por uno, los datos de una sucesión. Una vez que se ha analizado
cada dato, se inserta en un sitio idóneo en una sucesión ya
ordenada.

Por ejemplo, suponga que la sucesión de datos a ordenar es


Datos a ordenar:

El ordenamiento por inserción funciona sobre la sucesión anterior como se muestra a continuación:

En el proceso anterior, considere el caso en que la sucesión ordenada es


1, 5, 7, 11, 14 y que el siguiente dato a ordenar es 9.
Primero, 9 se compara con 14. Como 9 es menor que 14, a continuación
9 se compara con 11. Otra vez 9 es menor que 11. Al comparar 9 con 7,
se encuentra que 9 es mayor que 7. Así, 9 se inserta entre 9 y 11.
El segundo algoritmo de clasificación se denomina quick sort. Suponga que se quiere ordenar la siguiente
sucesión de datos:

El quick sort usa el primer elemento de los datos; a saber, 10, para dividir los datos en tres subconjuntos: los
elementos menores que 10, los mayores que 10 y los iguales a 10. Es decir, los datos se representan como sigue:

Ahora es necesario ordenar dos secuencias:


y
Observe que estas secuencias pueden ordenarse independientemente y que el método de división puede
aplicarse en forma recurrente a los dos subconjuntos. Por ejemplo, considere:

Al usar 17 para dividir el conjunto anterior de datos, se tiene

Después de ordenar la secuencia anterior en se obtiene

que es una secuencia ordenada. De manera semejante,

puede ordenarse como:

Al combinar todas las secuencias ordenadas en una se tiene

que es una secuencia ordenada.


Para comparar el quick sort con el ordenamiento por inserción, aquélla se implementó en una Intel 486, y
ésta, en una IBM SP2.
La IBM SP2 es una supercomputadora que derrotó al campeón de ajedrez en 1997,
mientras que la Intel 486 es sólo una computadora personal. Para cada número de puntos, aleatoriamente
se generaron 10 conjuntos de datos y para ambos algoritmos se obtuvo el tiempo promedio. En la figura
1-1 se muestran los resultados del experimento.

También podría gustarte