ホームページ >バックエンド開発 >C++ >C#アレイから重複した文字列を効率的に削除するにはどうすればよいですか?

C#アレイから重複した文字列を効率的に削除するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-25 12:08:10953ブラウズ

How Can I Efficiently Remove Duplicate Strings from a C# Array?

C# 配列での効率的な重複文字列の削除

C# 文字列配列から重複エントリを削除することは、頻繁に行われるプログラミング タスクです。 いくつかの方法が存在しますが、一般に最も効率的な方法には、LINQ または十分に最適化されたカスタム アプローチを使用することが含まれます。これらのオプションを検討してみましょう。

アプローチ 1: LINQ メソッド (推奨)

LINQ (言語統合クエリ) は、簡潔でパフォーマンスの高いソリューションを提供します。 Distinct() メソッドは、一意の文字列のみを効率的に識別して返します。

<code class="language-csharp">string[] originalArray = { "apple", "banana", "apple", "orange", "banana" };
string[] uniqueArray = originalArray.Distinct().ToArray(); </code>

このコード スニペットは重複を直接フィルターし、一意の文字列のみを含む新しい配列 (uniqueArray) を作成します。

アプローチ 2: カスタム方法 (特定のニーズ向け)

LINQ が好まれることが多いですが、比較プロセスに対する追加の制御が必要な場合や、メモリの最適化が重要な非常に大規模なデータセットの処理など、特定のシナリオではカスタム メソッドが利点を提供することがあります。 適切に構造化されたカスタム ソリューションは、特に非常に大規模な配列を扱う場合に、LINQ のパフォーマンスに匹敵する可能性があります。 ただし、より多くのコードと効率性についての慎重な考慮が必要です。

パフォーマンスの比較

ほとんどのアプリケーションでは、LINQ の Distinct() メソッドがコードの明瞭さとパフォーマンスの最適なバランスを提供します。 通常、新しい配列を作成するオーバーヘッドは、LINQ の最適化された実装の効率の方が優先されます。 カスタム ソリューションは、非常に特殊なシナリオではパフォーマンスがわずかに向上する可能性がありますが、複雑さが増すため、多くの場合、LINQ がより良い選択肢となります。

概要

C# 配列から重複する文字列を削除するには、そのシンプルさと効率性の理由から、LINQ Distinct() メソッドが一般的に推奨されます。 ただし、カスタム メソッドなどの代替アプローチを理解すると、特殊な状況に対処するための貴重な知識が得られます。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。