Как генерировать перестановки списка без «обратных дубликатов» в Python, используя генераторы
Это связано с вопросомКак сгенерировать все перестановки списка в Python
Как генерировать все перестановки, которыесоответствовать следующим критериям: если две перестановки противоположны друг другу (то есть [1,2,3,4] и [4,3,2,1]), они считаются равными, и только одна из них должна быть в конечном результате.
Пример:
permutations_without_duplicates ([1,2,3])
[1, 2, 3]
[1, 3, 2]
[2, 1, 3]
Я перестановки списков, которые содержат уникальные целые числа.
Количество полученных перестановок будет большим, поэтому я бы хотел использовать генераторы Python, если это возможно.
Редактировать: я хотел бы не хранить список всех перестановок в памяти, если это возможно.