«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу оптимизировать конкатенацию массива в C# для лучшей производительности?

Как я могу оптимизировать конкатенацию массива в C# для лучшей производительности?

Опубликовано в 2025-03-04
Просматривать:532

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

повышение C# Array Concatenation Performance: Высшая альтернатива concat

]

C#'S concat метод предоставляет простое решение для массивов соединения. Тем не менее, его производительность может быть неоптимальной при работе с большими массивами. Для значительного повышения эффективности в массиве конкатенации, рассмотрите эту альтернативу:

]
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 }));
]

этот метод напрямую выделяет новый массив z достаточного размера, чтобы удерживать оба x и y . Затем он использует array.copy для эффективной передачи элементов x и y в z . Это позволяет избежать создания промежуточных массивов, что приводит к более быстрому выполнению, особенно с более крупными наборами данных.

]

Важное рассмотрение: while concat остается подходящим для небольших массивов, где производительность не критична, подход выше предлагает существенное преимущество производительности для сценариев, связанных с большими массивами.

]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3