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

题目:

题解:

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

相关推荐

  1. 【算法30. 串联所有单词

    2024-04-15 09:48:03       56 阅读
  2. 面试经典---30.串联所有单词

    2024-04-15 09:48:03       47 阅读
  3. leetcode 30. 串联所有单词

    2024-04-15 09:48:03       68 阅读
  4. LeetCode 30. 串联所有单词

    2024-04-15 09:48:03       55 阅读
  5. LeetCode_30_困难_串联所有单词

    2024-04-15 09:48:03       36 阅读
  6. 30. 串联所有单词 —— LeetCode (python)

    2024-04-15 09:48:03       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-15 09:48:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-15 09:48:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-15 09:48:03       87 阅读
  4. Python语言-面向对象

    2024-04-15 09:48:03       96 阅读

热门阅读

  1. 作业 二维数组-矩阵问题

    2024-04-15 09:48:03       38 阅读
  2. Docker搭建FFmpeg

    2024-04-15 09:48:03       37 阅读
  3. (六)PostgreSQL的组织结构(1)

    2024-04-15 09:48:03       44 阅读
  4. 5.Spring&SpringBoot八股

    2024-04-15 09:48:03       32 阅读
  5. async-validator --- 中文文档

    2024-04-15 09:48:03       82 阅读
  6. 我的编程与创作历程:512天从C语言到Linux

    2024-04-15 09:48:03       37 阅读
  7. Pytorch:二维卷积及其伴随定义

    2024-04-15 09:48:03       160 阅读
  8. SpringBoot中的常见注解详细介绍,附带代码示例

    2024-04-15 09:48:03       32 阅读
  9. 神经网络模型底层原理与实现10-softmax的实现

    2024-04-15 09:48:03       134 阅读
  10. PyQt5

    PyQt5

    2024-04-15 09:48:03      111 阅读
  11. 如何防御局域网的网络攻击

    2024-04-15 09:48:03       118 阅读