У меня есть два массива, один содержит категории верхнего уровня, а другой содержит подкатегории, где длина подкатегорий> длина категорий верхнего уровня.Возможные категории с использованием рекурсии
Я пытаюсь написать рекурсивный алгоритм, чтобы дать мне все возможные способы разместить подкатегории в категориях верхнего уровня. Так, например, если у меня есть категории [A,B,C]
верхнего уровня и подкатегорий [W,X,Y,Z]
Я хотел бы получить:
A->WXYZ, B->null, C->null
A->XYZ, B->W, C->null
A->WYZ, B->X, C->null
...
A->null, B->Z, C->WXY
A->null, B->null, C->WXYZ
На первый взгляд, я не думаю, что эта проблема может быть решена с помощью типичного алгоритма перестановки, но Я могу ошибаться; Я не слишком хорош с рекурсией.
Спасибо!
Итак, каждая подкатегория должна быть не более одной категории? Или точно один? – svick
Каждая подкатегория должна быть в одной категории. – Paul
Я думаю, что могу найти рекурсивное решение, но он использует слишком много памяти, вам нужна практическая реализация? – sukunrt