leetcode-面试题-17.13-恢复空格

Posted oldby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode-面试题-17.13-恢复空格相关的知识,希望对你有一定的参考价值。

题目描述:

技术图片

 

 技术图片

 

 方法一:动态规划 O(n2) ->O(mn) m为字典中单词最大长度

class Solution:
    def respace(self, dictionary: List[str], sentence: str) -> int:
        d = {}.fromkeys(dictionary)
        n = len(sentence)
        mxl = max([len(i) for i in dictionary])
        #print(mxl)
        f = [0] * (n + 1)
        for i in range(1, n + 1):
            f[i] = f[i - 1] + 1
            for j in range(max(0,i-mxl),i):
                if sentence[j:i] in d:
                    f[i] = min(f[i], f[j])
        return f[-1]

 

以上是关于leetcode-面试题-17.13-恢复空格的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 面试题 17.13. 恢复空格

LeetCode 面试题05. 替换空格

LeetCode 面试题05. 替换空格

剑指OFFER----面试题05.替换空格

面试题05. 替换空格

面试题05. 替换空格