Maison >développement back-end >C++ >Quel est le moyen le plus efficace de concaténer des tableaux en C# ?

Quel est le moyen le plus efficace de concaténer des tableaux en C# ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-17 07:02:09433parcourir

What's the Most Efficient Way to Concatenate Arrays in C#?

Méthode de connexion efficace du tableau C#

La concaténation de tableaux est une tâche courante en programmation, qui combine les éléments de deux tableaux ou plus dans un nouveau tableau. En C#, la méthode Concat fournit un moyen pratique de concaténer des tableaux, mais ce n'est peut-être pas la solution la plus efficace pour les grands tableaux.

Une méthode alternative

Pour concaténer les tableaux plus efficacement, une alternative consiste à copier manuellement les éléments de chaque tableau dans un nouveau tableau de taille appropriée :

<code class="language-csharp">var z = new int[x.Length + y.Length];
x.CopyTo(z, 0);
y.CopyTo(z, x.Length);</code>

Cette méthode crée un nouveau tableau nommé z avec une taille égale à la somme des longueurs de x et y. Ensuite, copiez les éléments de x à partir de l'index 0 vers z, puis copiez les éléments de y à partir de l'index x.Length (c'est-à-dire la position après le dernier élément de x) vers z milieu.

Exemple d'utilisation

Considérons l'exemple suivant :

<code class="language-csharp">int[] x = { 1, 2, 3 };
int[] y = { 4, 5 };

var z = new int[x.Length + y.Length];
x.CopyTo(z, 0);
y.CopyTo(z, x.Length);

Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 }));</code>

Ce code créera un nouveau tableau x contenant tous les éléments de y et z et l'assertion vérifiera que les éléments sont correctement connectés.

Comparaison des performances

Les benchmarks montrent que cette alternative est plus efficace que l'approche Concat pour les grands tableaux. À mesure que la taille du tableau augmente, la différence de performances devient plus prononcée.

Conclusion

Bien que la méthode Concat fournisse un moyen concis de concaténer des tableaux, elle n'est peut-être pas la solution la plus efficace pour les grands tableaux. Pour de tels scénarios, la copie manuelle de tableaux constitue une alternative plus rapide et plus efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn