题解 | #字符串的排列#
字符串的排列
https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=295&tqId=23291&ru=/exam/oj&qru=/ta/format-top101/question-ranking&sourceUrl=%2Fexam%2Foj%3Ftab%3DSQL%25E7%25AF%2587%26topicId%3D82
class Solution: def Permutation(self , str): if len(str) == 1: return list(str) distinct_str = ''.join(set(str)) result_list = [] for i in range(len(distinct_str)):#遍历首字符(需要distinct) result_str = str.replace(distinct_str[i], '', 1) first = distinct_str[i] for item in self.Permutation(result_str): #一次递归 result_list.append(first+item) #合并首字符和其他字符组合的list return result_list