Búsqueda de sitios web

Programa Python para ordenar una matriz


En general, existen varias formas de ordenar una matriz. La matriz se puede ordenar en orden ascendente o descendente. La matriz ordenada en orden ascendente tendrá primero los elementos más pequeños y luego los elementos más grandes. La matriz ordenada en orden descendente tendrá primero los elementos más grandes y luego los elementos más pequeños.

La matriz generalmente se puede ordenar utilizando las características básicas del lenguaje Python. Para ello se utilizan dos bucles.

Escenario de entrada y salida

Consider an array arr = [ 5, 9, 1, 10, 3 ].

Ahora, ordenemos la matriz comparando un elemento con otro.

  • El primer elemento se compara inicialmente con el resto de elementos.

  • El mismo proceso se repite hasta el último elemento de modo que toda la matriz esté organizada u ordenada.

La matriz ordenada de "arr" en orden ascendente es sorted_array=[1, 3, 5, 9, 10].

Algoritmo

  • Paso 1 : inicialmente, se debe crear o declarar una matriz con algunos elementos. Tenga en cuenta que todos los elementos presentes en la matriz deben pertenecer al tipo de datos similar.

  • Paso 2 - Para ordenar los elementos, el primer paso a seguir es comparar los elementos. Se compara un elemento con el resto de elementos. Si el elemento es más pequeño que los otros elementos, entonces se coloca en la primera posición de la matriz (cuando la matriz ordenada se requiere en orden ascendente). Entonces, para continuar con la comparación, se requieren dos bucles. El primer bucle se utiliza para seleccionar un elemento de la matriz en consecuencia.

  • Paso 3: el segundo bucle o bucle interno se utiliza para comparar el elemento seleccionado en el primer bucle con los otros elementos. La selección de los elementos se realiza incrementando el número de índice. Este paso es uno de los más importantes durante todo el proceso de clasificación.

  • Paso 4 - Después de comparar el elemento, verifique si el elemento seleccionado en el bucle externo es menor que el elemento seleccionado en el bucle interno. Si el elemento es menor que el otro elemento, intercambie los valores de los elementos usando una variable "temp". La variable "temp" se utiliza como puente para almacenar los valores de otros elementos e intercambiar los valores fácilmente. (Esto está destinado principalmente a ordenar una matriz en orden ascendente).

  • Paso 5: al incrementar los valores de índice en los bucles (tanto el bucle interno como el bucle externo), continúe y repita todo el proceso hasta que todos los elementos se comparen y ordenen. Una vez completado todo el proceso, la matriz resultante es la matriz ordenada requerida.

Ejemplo

En el siguiente ejemplo, aprenderemos sobre el proceso de ordenar una matriz colocando los elementos en orden ascendente.

arr = [5, 9, 1, 10, 3, 8, 4, 2, 7, 6]  
temp = 0
max_size = len(arr)
print("The elements of the array before sorting: ");
for i in range(0, max_size):
   print(arr[i], end=" ")  

print()   
for i in range(0, max_size):
   for j in range(i+1, len(arr)):
      if(arr[i] > arr[j]):
         temp = arr[i]
         arr[i] = arr[j]
         arr[j] = temp
print("The elements of the array after sorting: ")

for i in range(0, max_size):
   print(arr[i], end=" ") 

Producción

El resultado del programa anterior es el siguiente:

The elements of the array before sorting: 
5 9 1 10 3 8 4 2 7 6
The elements of the array after sorting:
1 2 3 4 5 6 7 8 9 10

Conclusión

De esta manera, el procedimiento para ordenar una matriz ya sea en orden ascendente o descendente funciona utilizando características básicas de Python como bucles, declaraciones condicionales, etc. Esto no se considera una técnica eficiente ya que existen otros algoritmos eficientes que disminuyen Mucho tiempo de ejecución, pero con los conocimientos básicos del lenguaje de programación, este algoritmo se puede construir y entender fácilmente. Esta técnica se utiliza principalmente en aplicaciones más pequeñas.

Artículos relacionados: