0

比較値としてDictionary<long, MyClass>使用するタイプの辞書で重複を探しています:MyClass.some_property

var dict = new Dictionary<long, MyClass>(...);
var duplicates = from d in dict
                 group d by d.Value.some_property into g
                 where g.Count() > 1
                 select g;

duplicatesここで、列挙可能な各グループの最初の要素を除外する必要があります。すべてを別のデータ構造に変換せずにこれを行うにはどうすればよいでしょうか? 追加のメモリの使用を避けたい。

4

1 に答える 1

1

スキップが使える

var dict = new Dictionary<long, MyClass>(...);
var duplicates = from d in dict
                 group d by d.Value.some_property into g
                 where g.Count() > 1
                 select new {Key= g.Key, Values = g.Skip(1)};
于 2013-10-26T02:22:51.450 に答える