《剑指Offer》刷题笔记——面试题38. 字符串的排序

难度:中等

一、题目描述:

在这里插入图片描述

二、解题分析:

1、剑指解析

在这里插入图片描述

2、代码实现

class Solution:
    def permutation(self, s: str) -> List[str]:
        #思路:dfs同时记录路径,到根节点处统计结果
        s = sorted(list(s))

        res = []
        def dfs(s,road):
            if s == []:
                res.append(''.join(road))
            for i in range(len(s)):
                if i>0 and s[i] == s[i-1]:continue 
                dfs(s[:i]+s[i+1:], road+[s[i]])
        dfs(s,[])
        return(res)
发布了133 篇原创文章 · 获赞 155 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_34108714/article/details/104692731