首页 > 解决方案 > 如何在不使用任何导入的情况下不断向字符串添加字母直到递归结束?

问题描述

嗨,我在想如何在任何位置将字母添加到字符串中。

例如,我想将所有的 'abc' 相加,所以我递归它,它从 '' 开始。

然后[''] ->['c'] ->['bc','cb'] ->['abc','bac','bca','acb','cab','cba']

如何'b'添加到字符串的第一个位置和最后一个位置'c'

到目前为止,我一直在继续测试,我得到了这个,我不知道如何进一步进行。

def permutation(x):
    if x == '':
        return ['']

    a=x[0]
    b=permutation(x[1:])
    c=[]
    for i in b:
        for j in range(len(i)):
            d= list(i)
            d.append(a)
permutation('abc')

标签: pythonrecursion

解决方案


推荐阅读