次のようなクラスがあるとします...
public class IntGroup {
public string GroupName {get; set;}
public List<int> Integers {get; set;}
}
...そして、それぞれが整数のコレクションを含むいくつかのインスタンスがあります。個別の整数を含むグループの最小セットを見つけたいと考えています。
たとえば、次のグループがある場合...
グループ 1 には 1、2、3 が含まれます
グループ 2 には 4、5、6 が含ま
れます グループ 3 には 4、5、9 が含まれます
...次に、グループ 1 には他のグループにはない 3 つの整数が含まれているため、それ自体がグループの最小セット (この場合は 1 つのセット) です。グループ 2 と 3 を一緒にすると、両方のグループを一緒にする必要があるという点で (どちらも 4 と 5 が含まれているため)、別の最小のセットですが、グループ 1 は必要ありません。
これらの最小グループを見つけるのに役立つ C# コードを書きたいと思います。これは、Linq で非常にエレガントに解決できると私が感じる種類の問題ですが、その方法はわかりません。
誰でも助けることができますか?ところで、これは宿題の質問ではありません。私は 51 歳のプログラマーであり、関数呼び出しのツリーを構築するというより大きな問題の一部を解決しようとしており、ツリーの個別の部分を見つけたいと考えています。
ご協力いただきありがとうございます。