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

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

王林
Freigeben: 2023-09-15 22:57:03
nach vorne
760 Leute haben es durchsucht

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]]
Nach dem Login kopieren

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
Nach dem Login kopieren

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 
Nach dem Login kopieren
  • Die Array-Darstellung der sortierten Matrix ist

  • [[9, 9, 9, 7 ], [7, 7, 8, 6], [8, 6, 6, 5], [ 2, 5, 5, 4 ]]
    
    Nach dem Login kopieren
  • 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)
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage