Python | Leetcode Python题解之第30题串联所有单词的子串

题目:

题解:

python 复制代码
class Solution:
    def findSubstring(self, s: str, words: List[str]) -> List[int]:
        res = []
        m, n, ls = len(words), len(words[0]), len(s)
        for i in range(n):
            if i + m * n > ls:
                break
            differ = Counter()
            for j in range(m):
                word = s[i + j * n: i + (j + 1) * n]
                differ[word] += 1
            for word in words:
                differ[word] -= 1
                if differ[word] == 0:
                    del differ[word]
            for start in range(i, ls - m * n + 1, n):
                if start != i:
                    word = s[start + (m - 1) * n: start + m * n]
                    differ[word] += 1
                    if differ[word] == 0:
                        del differ[word]
                    word = s[start - n: start]
                    differ[word] -= 1
                    if differ[word] == 0:
                        del differ[word]
                if len(differ) == 0:
                    res.append(start)
        return res
相关推荐
浪九天10 分钟前
面向高质量视频生成的扩散模型方法-算法、架构与实现【附核心代码】
python·深度学习·算法·机器学习·自然语言处理·数据挖掘·音视频
我的运维人生37 分钟前
从零开始:使用 Python 实现机器学习的基础与实践
开发语言·python·机器学习
python收藏家41 分钟前
Python | 机器学习中最常用的超参数及使用示例
python·机器学习
测试的菜鸟1 小时前
[pytest] 配置
python·pytest
开开心心就好1 小时前
能一站式搞定远程操作需求的实用工具
java·服务器·python·spring·pdf·电脑·软件
YaoSolar1 小时前
刷题记录(LeetCode 78 子集)
算法·leetcode
蔗理苦1 小时前
2025-03-10 吴恩达机器学习1——机器学习概述
人工智能·python·机器学习
IT古董1 小时前
【漫话机器学习系列】130.主成分(Principal Components)
人工智能·python·机器学习
m0_748257461 小时前
Python大数据可视化:基于spark的短视频推荐系统的设计与实现_django+spider
python·spark·django
m0_748254881 小时前
Python大数据可视化:基于Python的王者荣耀战队的数据分析系统设计与实现_flask+hadoop+spider
hadoop·python·flask