Информация об изменениях

Сообщение Циклы переменной вложенности - как? от 18.03.2019 8:54

Изменено 18.03.2019 9:48 mDmitriy

Циклы переменной вложенности - как?
Всем привет!

Есть такая задача:
на входе несколько массивов переменной длины
на выходе должен быть список массивов со всеми возможными сочетаниями
var array1 = new object[n1];
var array2 = new object[n2];
var array3 = new object[n3];
...
var arrayN = new object[nN]; (всего N массивов)

комбинируем, должны получить
List<object[N]>

мне реализация видится примерно так:
1) комбинируем первые два массива
2) полученный скомбинированный набор комбинируем со следующим
3) повторяем 2) пока массивы не кончатся

Может кто-нибудь подскажет алгоритм получше?
Или вообще готовый вариант

Спасибо...

PS. размерность и количество массивов очень невелики (примерно <5), так что производительностью можно не заморачиваться
Циклы переменной вложенности - как?
Всем привет!

Есть такая задача:
на входе несколько массивов переменной длины
значения всех элементов массивов уникальны на уровне всего входного множества
на выходе должен быть список массивов со всеми возможными уникальными сочетаниями (элементы сочетания из массивов должны следовать порядку массивов)
object[N][] input = new []
{
    new object[n1];
    new object[n2];
    new object[n3];
    ...
    new object[nN]; (всего N массивов)
}

комбинируем, должны получить
List<object[N]>

мне реализация видится примерно так:
1) комбинируем первые два массива
2) полученный скомбинированный набор комбинируем со следующим
3) повторяем 2) пока массивы не кончатся

Может кто-нибудь подскажет алгоритм получше?
Или вообще готовый вариант

Спасибо...

PS. размерность и количество массивов очень невелики (примерно <5), так что производительностью можно не заморачиваться