Ordenación por selección en VBA/Excel

En un post anterior a este vimos cómo aplicar el algoritmo de ordenación por el método de la burbuja para ordenar un Array en memoria, en esta ocasión veremos otra alternativa usando el algoritmo de ordenación por selección.

En una ordenación por selección, se selecciona elemento con el menor valor y se intercambia con el primer elemento, después con los restantes n-1 elementos, se obtiene el siguiente elemento con menor valor y se intercambia con el segundo y así sucesivamente hasta llegar a los dos últimos elementos.

Por ejemplo, si el método de selección fuera utilizado en el Array “bdac”,  cada paso se vería de la siguiente manera:

inicial      bdac
paso 1    adbc
paso 2    abdc
paso 3    abcd


El número de comparaciones en la ordenación de la burbuja y en la ordenación por selección es el mismo, pero el número de intercambios en el caso medio es bastante menor en la ordenación por selección, por lo tanto aplicar este algoritmo puede ser mucho más rápido que aplicar el algoritmo de ordenación por el método de la burbuja. Les comparto el archivo con el código de ejemplo.

En el siguiente vídeo se puede apreciar visualmente como trabaja el algoritmo de ordenación por selección:


Comentarios