Skip to main content

¿Qué es la ordenación de matrices?

  • Humphrey

La ordenación de matrices es el proceso de tomar los elementos individuales de una matriz y organizarlos en algún tipo de orden lógico de acuerdo con una serie de reglas definidas por el usuario. El proceso implica pasar a través de la matriz, un elemento a la vez, y probar ese elemento contra los elementos circundantes para determinar si es necesario moverlo a otro índice dentro de la matriz. Cuando se realiza la ordenación de matrices, hay varios algoritmos que pueden usarse, especialmente cuando las condiciones de ordenación son numéricas en lugar de algo más arbitrario. La mayoría de los algoritmos de clasificación de matriz se miden por su velocidad y eficiencia, siendo los algoritmos más lentos los más fáciles de programar y los más rápidos mucho más complejos.

El algoritmo de ordenación de matrices más simple se llama ordenación de burbujas, y también es el más lento. El proceso comienza con un ciclo que recorrerá cada elemento de la matriz. El elemento actual se compara con el siguiente elemento de la matriz y, si el siguiente elemento tiene un valor más bajo que el elemento actual, los datos en los índices se cambian. El inconveniente de una ordenación de burbujas es que necesita recorrer la matriz varias veces para hacer todos los intercambios necesarios para clasificar la matriz. En las implementaciones más básicas, la clasificación recorrerá toda la matriz una vez por cada elemento que contenga.

Una ordenación por selección utiliza un algoritmo que realiza la ordenación de la matriz de una manera un poco más eficiente que una ordenación por burbujas, pero aún requiere múltiples iteraciones a través de la matriz. Este tipo comienza recorriendo la matriz para encontrar el elemento de menor valor. Este elemento se coloca en el primer índice de la matriz y se incrementan algunas variables de seguimiento. El ciclo luego se repite, ahora buscando el siguiente valor más bajo que luego se colocará en el segundo índice de la matriz. El proceso continúa hasta que el elemento de mayor valor se coloca en el último índice de la matriz.

Un método de ordenación de matrices que puede ser eficiente pero a veces complejo de implementar se conoce como una clasificación rápida. La ordenación rápida implica tomar un valor que se encuentra en el medio de todos los valores posibles contenidos en la matriz. El algoritmo recorre todos los elementos de la matriz y coloca todos los valores mayores que el número medio al final de la matriz, y los valores más bajos al principio. Este proceso se realiza de forma recursiva en bloques de la matriz hasta que, al final, se ordena toda la matriz. Suponiendo que el valor medio utilizado para la matriz es bastante preciso, esta puede ser una forma muy rápida de ordenar.

Un factor que puede afectar un algoritmo de ordenación de matriz es el medio por el cual se prueba la equivalencia de los datos. Los números simples son fáciles de comparar para qué valor es mayor, pero este podría no ser el caso para las clases de datos complejas en las que es necesario comparar múltiples condiciones. Cuanto más se tarde en comparar si un elemento es mayor o menor que otro, más tiempo le tomará al algoritmo ordenar la matriz.