1593. 拆分字符串使唯一子字符串的数目最大

简介: 1593. 拆分字符串使唯一子字符串的数目最大

1593. 拆分字符串使唯一子字符串的数目最大

传送门

传送门

题意

bkMAXtvoydLHiuC.png

结题思路

# 思路1:暴力
# 用set()集合去重,每加一个字符时,判断加上它的数目多还是不加它的数目多。
# 从第二个字符开始,使用DFS返回将其合并到上一个集合的最后一个元素中,或单独成为一个集合的一个新元素。
# 取数目最大的分隔数目。
# 搜索的要点:(1)初始状态;
# (2)重复产生新状态;
# (3)检查新状态是否为目标,是结束,否转(2); [1] 
# 如果搜索是以接近起始状态的程序依次扩展状态的,叫宽度优先搜索。
# 如果扩展是首先扩展新产生的状态,则叫深度优先搜索。
class Solution(object):
        def maxUniqueSplit(self, s):
            len1 = len(s)
            if len1 == 1:
                return 1
            def dfs(cur, ss):
                if(cur == len1-1):
                    return len(set(ss.split()))
                cur += 1
                return max(dfs(cur, ss + s[cur]), dfs(cur, ss + ' ' + s[cur]))
            return dfs(0, s[0])

本文如有纰漏,可评论向我提意见哦

简单问题关注我后可以帮忙解答,

祝关注+点赞的小可爱刷题顺利,获得心仪的offer!!

目录
相关文章
|
4月前
|
索引
【面试题】串联所有单词的子串,找到所有符合条件的串联子串的起始索引
【面试题】串联所有单词的子串,找到所有符合条件的串联子串的起始索引
55 0
|
5月前
|
C++
1456. 定长子串中元音的最大数目C++
1456. 定长子串中元音的最大数目C++
|
7月前
1456.定长子串中元音的最大数目
1456.定长子串中元音的最大数目
43 1
|
7月前
|
算法 测试技术 C#
【前缀和】3085. 成为 K 特殊字符串需要删除的最少字符数
【前缀和】3085. 成为 K 特殊字符串需要删除的最少字符数
|
7月前
|
算法 测试技术 C#
【线段树】2213. 由单个字符重复的最长子字符串
【线段树】2213. 由单个字符重复的最长子字符串
|
7月前
|
索引 容器
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
查找单词个数案列实现(字符串流)
查找单词个数案列实现(字符串流)
44 0
|
7月前
|
存储 算法 前端开发
2788. 按分隔符拆分字符串
2788. 按分隔符拆分字符串
57 0
逆序一个字符串的每一组单词(不是倒叙)
整体思路: 1.先将整个字符串倒叙:i like china.->.anihc ekil i 2.将倒叙后的每一块单词再倒叙:.anihc->china. 想必大家都发现了,倒叙整个字符串和倒叙每一块是一样的,那么我们不妨写一个倒叙的函数在这里用reserve表示!
82 0
|
算法 C语言 C++
【前缀和】1456.定长子串中元音的最大数目
本篇将学习前缀和OJ题定长子串中元音的最大数目相关知识。
83 1