LINQ を使用してコレクションをn
いくつかの部分に分割する良い方法はありますか? もちろん、必ずしも均等に分割する必要はありません。
つまり、コレクションをサブコレクションに分割し、各サブコレクションに要素のサブセットを含め、最後のコレクションを不規則にしたいのです。
ベストアンサー1
純粋な linq と最も単純なソリューションを以下に示します。
static class LinqExtensions
{
public static IEnumerable<IEnumerable<T>> Split<T>(this IEnumerable<T> list, int parts)
{
int i = 0;
var splits = from item in list
group item by i++ % parts into part
select part.AsEnumerable();
return splits;
}
}