MoreEnumerable.Subsets<T>(IEnumerable<T>, Int32) Method

Returns a sequence of IList<T> representing all subsets of a given size that are part of the original sequence. In mathematics, it is equivalent to the combinations or k-subsets of a set.

Definition

Namespace: MoreLinq
Assembly: MoreLinq (in MoreLinq.dll) Version: 4.4.0+6d97c3b1d482f98300f4446df14742b0e3fafbec
C#
public static IEnumerable<IList<T>> Subsets<T>(
	this IEnumerable<T> sequence,
	int subsetSize
)

Parameters

sequence  IEnumerable<T>
Sequence for which to produce subsets.
subsetSize  Int32
The size of the subsets to produce.

Type Parameters

T
The type of the elements in the sequence.

Return Value

IEnumerable<IList<T>>
A sequence of lists that represents of K-sized subsets of the original sequence.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<T>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

Exceptions

ArgumentNullException Thrown if sequence is null.
ArgumentOutOfRangeException Thrown if subsetSize is less than zero.

See Also