word break

来源:互联网 发布:矩阵svd分解 例子 编辑:程序博客网 时间:2024/06/02 14:45

LeetCode 139. Word Break

bool wordBreak(string s, unordered_set<string> &dict) {    vector<int> dp(s.size() + 1);  //dp[i + 1]为s(0~i)是否有路径    dp[0] = 1;    for (int i = 1; i < s.size() + 1; i++)    {        int j = i;        while (j >= 0 && dp[i] == 0)        {            if (dp[j] == 1 && dict.find(s.substr(j, i - j)) != dict.end())                dp[i] = 1;            else                j--;        }    }    return dp[s.size()] == 1;}

这段代码还是蛮有技巧的,有点儿回退的意味。

0 0