题解 | #字符串的排列#
字符串的排列
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:])
