如题,在不使用python语言自带的数据结构和库完成字符串的排列组合(读取时候可以切字符来读),是否可以用递归来完成?如何完成,或其他方法。
参考一下:https://blog.csdn.net/weixin_36297465/article/details/77620920
如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢
不使用python自带数据结构完成字符串排列组合
def perms(s='',p=''):
if len(s)<=1:
print(p+s)
return
for i in range(len(s)):
perms(s[0:i]+s[i+1:],p+s[i])
perms('ABCD')
切片也不用,那就把切片改成循环一个字符一个字符的拼接
def perms(s='',p=''):
if len(s)<=1:
print(p+s)
return
for i in range(len(s)):
e = ''
for j in range(len(s)):
if j!=i:
e += s[j]
perms(e,p+s[i])
perms('ABCD')