私はいくつかの要素を含むC#3 HashSet
オブジェクトを持っています。私は[(a、b)=(b、a)]を繰り返さずに、要素をそれ自身とペアリングせずに、それらのすべてのペアの間で何かをチェックしたいと思います。
何らかのリストに切り替えることを考えたので、各要素を次のすべての要素とペアにすることができます。無秩序の一般的なものを使ってそのようなことをするオプションがありますか?Collection
?またはIQuaryable
?コレクション内のすべてのユニークペアを簡単に反復する方法
答えて
このため、インデックスでアクセスできるときは簡単ですが、ElementAt<>拡張子が存在しますが、まず.ToList()を使用する方が早いでしょう。
あなたがアドレス可能なリストを持っている:
for (int i = 0; i < list.Count-1; i++)
for (int j = i+1; j < list.Count; j++)
Foo(list[i], list[j]);
おそらくここで何か不足しているかもしれませんが、どうすればIEqualitycomparerを使って確実に確認できますか?すべてのペアはユニークですか?要素がそれ自身とペアになっていないことを確認するために簡単に使うことができますが、それだけでは不十分です。 –
HashSetには一意の要素しか含まれていないため、最初にすべてのタプルを作成する必要があります。過度に複雑に思えます。 –
mm ..または、私は、要素のペアのためのcomparerを作成し、すべてのペアのIEnumerable上の別名でそれを使用することができます。私は後でそれをチェックします。ありがとう。 –
- 1. matlabワークスペース内のすべてのオブジェクトを反復する方法
- 2. NSArrayを後方に反復する簡単な方法はありますか?
- 3. 符号なし整数のすべての値を反復する最も簡単な方法
- 4. Cのコレクションのすべての要素を反復する方法の間の高速な方法
- 5. jqGridキャッシュ内のすべてのアイテムを反復処理する方法
- 6. スイングインターフェイス内のすべてのボタンを反復処理する方法は?
- 7. struts2のオブジェクトのコレクションを反復処理する方法は?
- 8. 反復中にコレクション内の要素を変更する概念
- 9. すべてのBundleオブジェクトを反復する方法
- 10. iphone内のフォルダのすべてのサブフォルダを反復する
- 11. すべてのリンクを簡単に消す方法
- 12. ファイルの行を反復処理してカウンタを保持する最も簡単な方法は何ですか?
- 13. 同期コレクションの反復
- 14. モデル内のコレクションを順序付けられていないリストに反復する方法は?
- 15. Rフォルダ内のすべてのファイルに対してループを反復する方法は?
- 16. すべてのアクティビティボタンでsetOnClickListener()を簡単に行う方法
- 17. Jadeテンプレート内のオブジェクトに対する反復反復?
- 18. 英語辞書のすべての単語を反復するためのソース
- 19. 現在のページのすべてのテキストボックスを反復する方法
- 20. Pharo Smalltalkでコレクションを後方に反復する
- 21. C#でAgility Packを使用してページ内のすべてのHTMLタグを反復処理する方法は?
- 22. C#でオブジェクトのすべてのプロパティを反復処理する方法は?
- 23. 共有プリファレンスのすべてのキーを反復処理する方法は?
- 24. 要素のすべての下位要素を反復する方法
- 25. APIを使用してmailchimpテンプレートのコレクションを反復する
- 26. Lodashで配列内のオブジェクトを反復処理する方法
- 27. StringTemplate - リスト内のリストを反復処理する方法は?
- 28. ノード内のオブジェクトを検査/反復する方法は?
- 29. whileループ内の反復/ループをスキップする方法
ので、ちょうど明確にする:はい、あなたは_set_を撮りたい、とそれからその_two要素subsets_のすべての_sequence_を作りますか? –
すべてのユニークな2要素サブセット。したがって、(a、b)がそこにある場合、(b、a)はそうではありません。 私はToList()メソッドを使うか、あるいはリストを使ってセットを切り替えてやり直すといいでしょう。 –