Python代码
s=list(input())
s.sort()
arr=[]
n=len(s)
st=[True for _ in range(n+1)]
def dfs(x):
if x>n-1:
if len(arr)==n:
l="".join(arr)
print(l)
return
for i in range(n):
if st[i]:
arr.append(s[i])
st[i]=False
dfs(x+1)
st[i]=True
arr.pop()
dfs(0)