zoukankan      html  css  js  c++  java
  • [LeetCode]题解(python):139-Word Break

    题目来源:

      https://leetcode.com/problems/word-break/


    题意分析:

      给定一个字符串s和一个字典dict,判断s是不是由字典dict里面的元素组成的。


    题目思路:

      这里可以用动态规划的思想。首先用一个tq[] 存储所有s[:i] 可以由dict组成的下标。如果存在s[tq[i] : j + 1] in dict,那么将j + 1加入tq,如果size在tq里面,那么返回True,否者返回False。


    代码(python):

    class Solution(object):
        def wordBreak(self, s, wordDict):
            """
            :type s: str
            :type wordDict: Set[str]
            :rtype: bool
            """
            size = len(s)
            if size == 0:
                return True
            tq = [0]
            i = 0
            while i < size:
                j,nsize = 0,len(tq)
                while j < nsize:
                    if s[tq[j]:i+1] in wordDict:
                        if i + 1== size:
                            return True
                        tq.append(i+1)
                        break
                    j += 1
                i += 1
            return False
    View Code
  • 相关阅读:
    AOJ 718.计算GPA
    AOJ 11.Rails
    AOJ 592.神奇的叶子
    AOJ 10.目标柏林
    洛谷P1030求先序排列
    vijos1514天才的记忆
    洛谷2016战略游戏
    LOJ10155数字转换
    洛谷2014选课
    洛谷2015二叉苹果树
  • 原文地址:https://www.cnblogs.com/chruny/p/5363994.html
Copyright © 2011-2022 走看看