"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo optimizar la concatenación de matriz en C# para un mejor rendimiento?

¿Cómo puedo optimizar la concatenación de matriz en C# para un mejor rendimiento?

Publicado el 2025-03-04
Navegar:943

How Can I Optimize Array Concatenation in C# for Better Performance?

aumentando el rendimiento de concatenación de la matriz: una alternativa superior a concat

c#'s concat El método proporciona una solución simple para unir matrices. Sin embargo, su rendimiento puede ser subóptimo cuando se trata de grandes matrices. Para una eficiencia significativamente mejorada en la concatenación de matriz, considere esta alternativa:

int[] x = new int[] { 1, 2, 3 };
int[] y = new int[] { 4, 5 };

int[] z = new int[x.Length   y.Length];
Array.Copy(x, z, x.Length);
Array.Copy(y, 0, z, x.Length, y.Length);

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

Este método asigna directamente una nueva matriz z de tamaño suficiente para contener tanto x y y . Luego aprovecha array.copy para transferir eficientemente los elementos de x y y in z . Esto evita la creación de matrices intermedias, lo que lleva a una ejecución más rápida, especialmente con conjuntos de datos más grandes.

consideración importante: while concat sigue siendo adecuada para matrices más pequeñas donde el rendimiento no es crítico, el enfoque anterior ofrece una ventaja de rendimiento sustancial para escenarios que involucran grandes matrices.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3