Перестановки коллекций строк в C #
Похоже, я снова застрял с рекурсивными алгоритмами ...
Мое приложение должно сортировать файлы по разным папкам в соответствии с информацией, указанной пользователем, и в соответствии со структурой подпапок, представленной строкой, подобной следующей:
[ROOT] \ brand \ color \ material \
Теги в строке структуры представляют коллекции:
Предполагать:
var brand = new List<string> { "Nike", "Adidas", "Reebok" };
var color = new List<string> { "red", "blue", "yellow", "black" };
var material = new List<string> { "leather", "fabric" };
var data = new List<List<string>>() { brand, color, material };
И я пытаюсь получить что-то вроде:
[ROOT]\Nike\red\leather
[ROOT]\Nike\red\fabric
[ROOT]\Nike\blue\leather
[ROOT]\Nike\blue\fabric
[ROOT]\Nike\yellow\leather
[ROOT]\Nike\yellow\fabric
[ROOT]\Nike\black\leather
[ROOT]\Nike\black\fabric
[ROOT]\Adidas\red\leather
[ROOT]\Adidas\red\fabric
[ROOT]\Adidas\blue\leather
[ROOT]\Adidas\blue\fabric
[ROOT]\Adidas\yellow\leather
[ROOT]\Adidas\yellow\fabric
[ROOT]\Adidas\black\leather
[ROOT]\Adidas\black\fabric
[ROOT]\Reebok\red\leather
[ROOT]\Reebok\red\fabric
[ROOT]\Reebok\blue\leather
[ROOT]\Reebok\blue\fabric
[ROOT]\Reebok\yellow\leather
[ROOT]\Reebok\yellow\fabric
[ROOT]\Reebok\black\leather
[ROOT]\Reebok\black\fabric
Проблема заключается в том, что количество тегов данных (марка, цвет, материал) и их порядок заранее неизвестны, поэтому возникает необходимость в рекурсии.
Любая идея?
Огромное спасибо заранее!