题解 | #字符串的排列#
字符串的排列
https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param str string字符串 # @return string字符串一维数组 # class Solution: def __init__(self) -> None: self.res=[] def Permutation(self , str: str) -> List[str]: s ="".join((lambda x:(x.sort(),x)[1])(list(str))) self.dfs('',s) # 重复字符放一起 return self.res def dfs(self,curr,store): # 临时状态和剩余字符集 if len(store)==0: self.res.append(curr) return for i in range(0,len(store)): if i>0 and store[i]==store[i-1]: continue self.dfs(curr+store[i],store[:i]+store[i+1:])