¿Cómo puedo obtener todas las combinaciones posibles de un subconjunto?
Considera estoList<string>
List<string> data = new List<string>();
data.Add("Text1");
data.Add("Text2");
data.Add("Text3");
data.Add("Text4");
El problema que tuve fue: ¿cómo puedo obtener cada combinación de un subconjunto de la lista? Algo así:
#Subset Dimension 4
Text1;Text2;Text3;Text4
#Subset Dimension 3
Text1;Text2;Text3;
Text1;Text2;Text4;
Text1;Text3;Text4;
Text2;Text3;Text4;
#Subset Dimension 2
Text1;Text2;
Text1;Text3;
Text1;Text4;
Text2;Text3;
Text2;Text4;
#Subset Dimension 1
Text1;
Text2;
Text3;
Text4;
Se me ocurrió una solución decente que vale la pena compartir aquí.