@[算法题]
常用情况,在解决复杂问题的时候会用到,可以自行灵活修改为对字符串的排列

python实现

n = input().split()
for e in n:
    s = []
    s.append(e)
    m = n[:]
    m.remove(e)
    for f in m:
        s.append(f)
        k = m[:]
        k.remove(f)
        for g in k:
            s.append(g)
            q = k[:]
            q.remove(g)
            for h in q:
                s.append(h)
                print(s)
                s.remove(h)
            s.remove(g)
        s.remove(f)
    s.remove(e)