题解 | #字符串的排列#

字符串的排列

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:])
        
            



        

全部评论

相关推荐

喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务