Вероятно, Stackoverflow - не лучший вариант для обмена фрагментами Gist, но есть связанные вопросы, и я решил поделиться своим фрагментом здесь, с хорошей уверенностью, что он может быть полезен для людей, которые ищут реализацию алгоритма Power Set и для самого сообщества Stackoverflow.
https://gist.github.com/vladignatyev/e76b5fd1c3cdfff7034ce17506fae36e
Моя реализация может быть трудной для понимания. Пожалуйста, поделитесь со мной своими вопросами, улучшениями и предложениями, связанными с этой частью программного обеспечения с открытым исходным кодом, свободно!
Usage:
>>> ps = power_set([1,2,3])
>>> for ss in ps:
print(ss)
Output:
[],
[1],
[2],
[3],
[1, 2],
[1, 3],
[2, 3],
[1, 2, 3]
Для вашей информации я перенес свой код на чистый Swift 5, никаких зависимостей не требуется. Выезд -> https://gist.github.com/vladignatyev/7e9399930cb614d6251a4f82b8e75ff1