Я хотел бы эффективно генерировать уникальный список комбинаций чисел, основанный на стартовом списке чисел.
example start list = [1,2,3,4,5]
, но алгоритм должен работать для [1,2,3...n]
result =
[1],[2],[3],[4],[5]
[1,2],[1,3],[1,4],[1,5]
[1,2,3],[1,2,4],[1,2,5]
[1,3,4],[1,3,5],[1,4,5]
[2,3],[2,4],[2,5]
[2,3,4],[2,3,5]
[3,4],[3,5]
[3,4,5]
[4,5]
Примечание. Я не хочу дублировать комбинации, хотя я мог бы жить с ними, например, в приведенном выше примере мне действительно не нужна комбинация [1,3,2], потому что она уже присутствует как [1,2,3]