题如下
您必须创建输入字符串的所有排列并删除重复项(如果存在)。
这意味着,您必须以所有可能的顺序打乱输入中的所有字母。
1.for j in permutations(string[0:i] + string[i + 1:]):是递归吗
2.return list("".join(p)..那一行看8懂
def permutations(string):
total = []
if len(string) <= 1:
return [string]
for i in range(len(string)):
for j in permutations(string[0:i] + string[i + 1:]):
total.append(string[i] + j)
return list(set(total))
print(permutations('aabb'))
import itertools
def permutations(string):
return list("".join(p) for p in set(itertools.permutations(string)))
print(permutations('aabb'))