Heim >Backend-Entwicklung >C++ >Wie kann ich Arrays in C# effizient verketten?
Array-Verkettung in C# optimieren
Das Kombinieren von Arrays in C# ist eine häufige Aufgabe. Die Concat
-Methode bietet eine einfache Lösung:
<code class="language-csharp">int[] x = { 1, 2, 3 }; int[] y = { 4, 5 }; int[] z = x.Concat(y).ToArray(); Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 }));</code>
Die Leistung von Concat
nimmt jedoch bei größeren Arrays merklich ab (wie in „Array-Verkettung in C#“ erläutert, nimmt die Leistung ab 10.000 Elementen erheblich ab).
Eine leistungsstärkere Alternative
Für eine verbesserte Effizienz, insbesondere bei großen Arrays, bietet ein manueller Ansatz einen erheblichen Vorteil. Dazu gehört das Erstellen eines neuen Arrays mit der richtigen Größe und das direkte Kopieren von Elementen:
<code class="language-csharp">var z = new int[x.Length + y.Length]; x.CopyTo(z, 0); y.CopyTo(z, x.Length);</code>
Diese Methode vermeidet den mit Concat
verbundenen Overhead, was zu einer schnelleren Verkettung führt, insbesondere bei großen Datensätzen. Obwohl es etwas ausführlicher ist, ist es aufgrund der Leistungssteigerung eine bevorzugte Wahl für die Array-Manipulation in größerem Maßstab.
Das obige ist der detaillierte Inhalt vonWie kann ich Arrays in C# effizient verketten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!