如何生成符合以下条件的所有排列:如果两个排列彼此相反(即[1,2,3,4]和[4,3,2,1]),则认为它们相等且只有一个排列应该是最终结果.
例:
permutations_without_duplicates ([1,2,3])
[1, 2, 3]
[1, 3, 2]
[2, 1, 3]
Run Code Online (Sandbox Code Playgroud)
我正在置换包含唯一整数的列表.
产生的排列数量很高,所以我想尽可能使用Python的生成器.
编辑:如果可能的话,我不想将所有排列的列表存储到内存中.