<分区>
是否有使用 LINQ 将集合拆分为 n
部分的好方法?
当然不一定均匀。
也就是我想把集合分成子集合,每个子集合包含元素的一个子集,最后一个集合可以参差不齐。
<分区>
是否有使用 LINQ 将集合拆分为 n
部分的好方法?
当然不一定均匀。
也就是我想把集合分成子集合,每个子集合包含元素的一个子集,最后一个集合可以参差不齐。
最佳答案
一个纯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;
}
}
关于c# - 使用 LINQ 将集合拆分为 `n` 部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/438188/