csharp / intermediate
Snippet
Optimierung der Matrixdarstellung mit verzweigten Arrays
Im Gegensatz zu mehrdimensionalen Arrays (z. B. int[,]) sind verzweigte Arrays 'Arrays von Arrays'. Sie sind speichereffizienter, wenn Zeilen unterschiedliche Längen haben (dünn besetzte Daten), und bieten oft eine bessere Leistung, da die CLI die Grenzwertprüfung für eindimensionale Arrays effektiver optimieren kann.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
int[][] jaggedMatrix = new int[3][];jaggedMatrix[0] = [1, 2];jaggedMatrix[1] = [3, 4, 5, 6];jaggedMatrix[2] = [7];foreach (var row in jaggedMatrix){Console.WriteLine($"Row length: {row.Length}");}
Erklärung
1
int[][] jaggedMatrix = new int[3][];
Initialisiert ein Array, das drei andere Arrays (die Zeilen) enthalten wird.
2
jaggedMatrix[1] = [3, 4, 5, 6];
Jede Zeile kann mit einer individuellen Länge initialisiert werden, was Platz spart.