Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Programm zum Sortieren von 2D-Arrays nach Spalten

Python-Programm zum Sortieren von 2D-Arrays nach Spalten

王林
王林nach vorne
2023-09-15 22:57:03726Durchsuche

Python-Programm zum Sortieren von 2D-Arrays nach Spalten

Bei der Deklaration eines 2D-Arrays oder 2D-Arrays wird es als Matrix behandelt. Wir wissen also, dass eine Matrix aus Zeilen und Spalten besteht. Das Sortieren der zu einer bestimmten Spalte einer Matrix gehörenden Elemente in aufsteigender oder absteigender Reihenfolge wird als spaltenübergreifendes Sortieren eines 2D-Arrays bezeichnet. Betrachten wir einen Algorithmus und ein Input-Output-Szenario, um die genaue Anwendung dieses Konzepts zu verstehen.

Eingabe- und Ausgabeszenarien

Stellen Sie sich ein 2D-Array vor.

arr =  [[ 7, 9, 5, 7 ], [9, 5, 9, 4], [2, 7, 8, 6], [ 8, 6, 6, 5]]

Die Matrixdarstellung des obigen zweidimensionalen Arrays lautet wie folgt -

7   9   5   7
9   5   9   4
2   7   8   6
8   6   6   5

Lassen Sie uns nun die gegebene Matrix in absteigender Reihenfolge über die Spalten sortieren.

  • Die erste Spalte besteht aus den Elementen 7, 9, 2 und 8. Die absteigende Reihenfolge der Elemente 7, 9, 2 und 8 ist 9, 8, 7 und 2.

  • Die zweite Spalte besteht aus den Elementen 9, 5, 7 und 6. Die absteigende Reihenfolge der Elemente 9, 5, 7 und 6 ist 9, 7, 6 und 5.

  • Ebenso sind auch die dritte und vierte Spalte sortiert.

  • Eine spaltenübergreifend in absteigender Reihenfolge sortierte Matrix ist

9   9   5   7
8   7   9   6
7   6   8   5
2   5   6   4 
  • Die Array-Darstellung der sortierten Matrix ist

  • [[9, 9, 9, 7 ], [7, 7, 8, 6], [8, 6, 6, 5], [ 2, 5, 5, 4 ]]
    
  • Dies ist das sortierte Array.

Beispiel

In diesem Beispiel besprechen wir, wie man ein 2D-Array über Spalten hinweg sortiert. Die Schritte, die zum Erstellen des erforderlichen Programms befolgt werden müssen, sind wie folgt

  • Schritt 1 – Deklarieren Sie ein 2D-Array

  • Schritt 2 – Durchlaufen Sie alle Elemente spaltenweise, um die Elemente entsprechend zu sortieren.

  • Schritt 3 – Vergleichen Sie Elemente derselben Spalte und befolgen Sie die Bedingung, wenn ein Element kleiner als das andere ist.

  • Schritt 4 – Wenn die Bedingung nicht erfüllt ist, tauschen Sie die Elemente aus.

  • Schritt 5 - Fahren Sie mit dem gleichen Vorgang fort, bis alle Elemente in der Spalte abgedeckt sind, und drucken Sie schließlich das Array in sortierter Form aus.

def sort_the_array_column_wise(arr):
   for j in range (size):
      for i in range(size - 1):
         if arr[i][j] < arr[i + 1][j]:
            temp = arr[i][j]
            arr[i][j] = arr[i + 1][j]
            arr[i + 1][j] = temp

   for i in range(size):

      for j in range(size):

         print(arr[i][j], end=" ")

      print()

arr = [[7, 9, 5, 7 ], [9, 5, 9, 4], [2, 7, 8, 6], [ 8, 6, 6, 5 ]]

size = len(arr)
print("The array before performing sorting operation is: ")
for i in range(size):
   for j in range(size):

      print(arr[i][j], end=" ")
   print()

print("The array after performing sorting operation is: ")
sort_the_array_column_wise(arr)

Ausgabe

Die Ausgabe des obigen Programms ist wie folgt -

The array before performing sorting operation is: 
7 9 5 7
9 5 9 4
2 7 8 6
8 6 6 5
The array after performing sorting operation is:
9 9 9 7
7 7 8 6
8 6 6 5
2 5 5 4

Fazit

Wir können deutlich erkennen, dass die Ausgabe tatsächlich dem erwarteten Ergebnis im obigen Beispiel entspricht. Ebenso kann das Sortieren eines zweidimensionalen Arrays über Zeilen hinweg erreicht werden, indem einige Anweisungen im obigen Programm geändert werden. So funktioniert das Konzept, ein 2D-Array über Spalten hinweg zu sortieren.

Das obige ist der detaillierte Inhalt vonPython-Programm zum Sortieren von 2D-Arrays nach Spalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen