首页 > 解决方案 > Cross join between arbitrary number of sets

问题描述

in C# how can I create a cross join between an arbitrary number of sets?

E.g. given the following data:

var a = new[] { "1.1", "1.2" };
var b = new[] { "2.1", "2.2", "2.3" };
var c = new[] { "3.1" };
var sets = new[]{a,b,c};

I need the following output:

var expected = new[]
{
    new[]{"1.1", "2.1", "3.1"},
    new[]{"1.1", "2.2", "3.1"},
    new[]{"1.1", "2.3", "3.1"},
    new[]{"1.2", "2.1", "3.1"},
    new[]{"1.2", "2.2", "3.1"},
    new[]{"1.2", "2.3", "3.1"}
};

标签: c#

解决方案


推荐阅读