предположим, что у нас есть массив идентификаторов, и нам нужно выполнить запрос с условием:
1. точное соответствие одиночных идентификаторов
только точная возможная перестановка идентификаторов
вот так:
["a", "b", "c"]
результат :
[
{foo:["a"]},
{foo:["a", "b"]},
{foo:["a", "c"]},
{foo:["b", "c"]},
{foo:["a", "b", "c"]},
{foo:["c"]},
{foo:["b"]},
]
и not this:
[
{foo:["a"]},
{foo:["a", "b"]},
{foo:["a", "f"]},
{foo:["g", "c"]},
{foo:["a", "b", "f"]},
]
для записи, теперь у меня есть функция предварительного вычисления, которая создает для меня эти массивы перед шагом запроса, и я использую для l oop для повторение моих результатов.
, но эта функция сильно ухудшит мою производительность. это неэффективно
для каждого индекса в моем массиве, у меня есть факториальные возможности.
4! = 4 × 3 × 2 × 1 = 24
7! = 7 × 6 × 5 × 4 × 3 × 2 × 1 = 5,040
что мне делать?