代码随想录算法训练营第四十天|leetcode139题

一、leetcode第139题

本题是完全背包问题,由于可以重复使用,因此需要先遍历背包再遍历物品,dp[i]的含义是在长度为i处能否从数组中找到元素组成。

具体代码如下:

cpp 复制代码
class Solution {
public:
    bool wordBreak(string s, vector<string>& wordDict) {
    vector<bool>dp(s.length()+1,false);
    unordered_set<string>wordset(wordDict.begin(),wordDict.end());
    dp[0]=true;
    for(int i=1;i<=s.length();i++)
    {
        for(int j=0;j<i;j++)
        {
            string word=s.substr(j,i-j);
            if(wordset.find(word)!=wordset.end()&&dp[j]==true)
            {
                dp[i]=true;
            }
        }
    }
    return dp[s.length()];
    }
};
相关推荐
ADDDDDD_Trouvaille2 分钟前
2026.2.19——OJ89-91题
c++·算法
郝学胜-神的一滴16 分钟前
Effective Modern C++ 条款39:一次事件通信的优雅解决方案
开发语言·数据结构·c++·算法·多线程·并发
@atweiwei20 分钟前
Rust 实现 LangChain
开发语言·算法·rust·langchain·llm·agent·rag
仰泳的熊猫22 分钟前
题目1514:蓝桥杯算法提高VIP-夺宝奇兵
数据结构·c++·算法·蓝桥杯
_OP_CHEN28 分钟前
【算法提高篇】(五)线段树 + 分治:解锁区间问题的终极思路,从最大子段和到复杂序列操作
数据结构·算法·蓝桥杯·线段树·c/c++·分治·acm/icpc
简佐义的博客31 分钟前
120万细胞大整合(自测+公共数据):scRNA-seq 构建乳腺细胞图谱的完整思路(附生信复现资源)
人工智能·深度学习·算法·机器学习
测试工坊36 分钟前
内存泄漏自动检测(中):用统计学替代"拍脑袋阈值"
算法
Wect39 分钟前
LeetCode 106. 从中序与后序遍历序列构造二叉树:题解+思路拆解
前端·算法·typescript
qq_4542450340 分钟前
上下文驱动的 ECS:一种反应式实体组件系统扩展
数据结构·算法·c#
xiaoye-duck1 小时前
《算法题讲解指南:优选算法-双指针》--03快乐数,04盛水最多的容器
c++·算法