假设我有字符串,s='AADD'
。我使用了more_itertools
和distinct permutation,这将打印出(AADD,ADDA,DDAA,ADAD,DADA,DAAD)
。
我的问题是,因为AADD
和DDAA
,ADAD
和DADA
本质上是彼此的镜像,我想摆脱其中的一个,我应该如何修改我的代码来实现这一点?
import more_itertools
s = 'AADD'
#counting = 0
for i in more_itertools.distinct_permutations(s):
print(''.join(i))
#counting += 1
更新:关于大量数据处理,我还有另一个问题。假设我的字符串"s“有50个字母而不是4个,我想知道"more_itertools”中的"distinct_permutation“是不是最有效的方法?我用Mathematica计算了所有可能的组合,有超过100亿种可能的组合,我想知道是否有更快的方法来完成这项任务。如果这个问题很愚蠢,请提前道歉,因为我没有上过任何编码课程,在做项目的同时我自己也在学习编码。
https://stackoverflow.com/questions/51031968
复制相似问题