
1.递归的思想,第一个字符和其他字符排序组合,然后依次类推
2.set函数

class Solution:
def Permutation(self, ss):
if len(ss) <=0:
return []
res = list()
self.perm(ss,res,'')
seq = list(set(res))
return sorted(seq)
def perm(self,ss,res,path):
if ss=='':
res.append(path)
else:
for i in range(len(ss)):
self.perm(ss[:i]+ss[i+1:],res,path+ss[i])
本文介绍了一种使用递归算法实现字符串所有可能排列的方法,并通过Python代码实例展示了具体实现过程。利用递归思想,首先固定字符串的第一个字符,对其余字符进行全排列;随后将第一个字符与其他字符依次交换位置重复上述过程,直至所有字符都完成排列。为去除重复结果,采用了set函数进行去重,并最终返回排序后的结果。
202

被折叠的 条评论
为什么被折叠?



