ホームページ > バックエンド開発 > C++ > C# で配列を効率的に連結するにはどうすればよいですか?

C# で配列を効率的に連結するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-17 06:47:10
オリジナル
176 人が閲覧しました

How Can I Efficiently Concatenate Arrays in C#?

C# での配列連結の最適化

C# での配列の結合は一般的なタスクです。 Concat メソッドは簡単な解決策を提供します。

<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>
ログイン後にコピー

ただし、配列が大きくなると Concat のパフォーマンスが著しく低下します (「C# での配列の連結」で説明したように、要素が 10,000 個を超えるとパフォーマンスが大幅に低下します)。

よりパフォーマンスの高い代替手段

効率を向上させるには、特に大規模なアレイの場合、手動アプローチには大きな利点があります。 これには、正しいサイズの新しい配列を作成し、要素を直接コピーすることが含まれます:

<code class="language-csharp">var z = new int[x.Length + y.Length];
x.CopyTo(z, 0);
y.CopyTo(z, x.Length);</code>
ログイン後にコピー

このメソッドは、Concat に固有のオーバーヘッドを回避し、特に大規模なデータセットの場合に連結が高速になります。 やや冗長ではありますが、パフォーマンスが向上するため、大規模な配列操作には好ましい選択肢となります。

以上がC# で配列を効率的に連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート