Предположим, что у меня есть массив битов (но это также могут быть целые числа в определенный диапазон) фиксированной длины n, скажем, 5.
Код: Выделить всё
array=[0,1,1,0,0]
Итак:
Код: Выделить всё
[0,0,0,0,0], [0,0,0,0,1], [0,0,0,1,0], [0,0,0,1,1] ...
Чтобы решить эту проблему, я пробовал различные циклы, но всегда в конечном итоге либо получал одну возможность более одного раза (не должно происходить), либо не получал все возможные.
Я могу сделать это с помощью операторов if (чтобы проверить, существует ли уже комбинация), но это кажется очень простым.
Существует ли простой метод, использующий только циклы, для получения всех возможностей?
Спасибо
Редактировать: поскольку об этом было упомянуто ниже, нет, это не домашнее задание. Это исследование предназначено для реализации байесовской сети бинарных состояний. (вкл/выкл).
Подробнее здесь: https://stackoverflow.com/questions/129 ... ython-or-a