当前位置: 首页 > news >正文

Leetcode 139. 单词拆分 动态规划

原题链接:Leetcode 139. 单词拆分

在这里插入图片描述
递归,超时

class Solution {
public:bool isfind(string s,map<string,int>& mp){for(auto x:mp){string word=x.first;if(s==word) return true;int n=word.size();if(n>s.size()) continue;string s1=s.substr(0,n);if(s1==word){string s2=s.substr(n);if(isfind(s2,mp)){mp[s2]=1; return true;}} string s3=s.substr(s.size()-n);if(s3==word){string s4=s.substr(0,s.size()-n);if(isfind(s4,mp)){mp[s4]=1; return true;}}}return false;}bool wordBreak(string s, vector<string>& wordDict) {map<string,int> mp;for(auto word:wordDict){if(s==word) return true;mp[word]=1;}return isfind(s,mp);}};

动态规划

class Solution {
public:bool wordBreak(string s, vector<string>& wordDict) {map<string, int> mp;for (auto word : wordDict) {if (s == word)return true;mp[word] = 1;}int n = s.size();int dp[n + 1];for (int i = 1; i <= n; i++) {dp[i] = 0;for (int j = 0; j < i; j++) {string word = s.substr(j, i - j);if (dp[j] && mp[word] == 1) {dp[i] = 1;continue;}}}return dp[n];}
};
http://www.lryc.cn/news/518649.html

相关文章:

  • python异常机制
  • 运行爬虫时可能遇到哪些常见问题?
  • BGP与CN2的区别 详解两者在网络传输中的应用与优势
  • Spring 项目 基于 Tomcat容器进行部署
  • “负载均衡”出站的功能、原理与场景案例
  • 02-51单片机数码管与矩阵键盘
  • 不同方式获取音频时长 - python 实现
  • 【python A* pygame 格式化 自定义起点、终点、障碍】
  • 12_Redis发布订阅
  • 归并排序:数据排序的高效之道
  • 【redis初阶】浅谈分布式系统
  • CatLog的使用
  • 头歌python实验:网络安全应用实践-恶意流量检测
  • 大模型WebUI:Gradio全解11——Chatbots:融合大模型的多模态聊天机器人(2)
  • 如何用 Python 实现简单的 AI 模型?
  • 单片机-直流电机实验
  • python【数据结构】
  • 详解Sonar与Jenkins 的集成使用!
  • 《笔记》青蛙跳台阶——斐波那契数列
  • SpringBoot3动态切换数据源
  • OSPF - 特殊区域
  • Linux 系统下磁盘相关指令:df、du、fdisk、lsblk
  • 基于单片机的肺功能MVV简单测算
  • 如何用Python编程实现自动整理XML发票文件
  • 腾讯云AI代码助手编程挑战赛-百事一点通
  • Spring学习笔记1
  • LeetCode 2185. Counting Words With a Given Prefix
  • 图漾相机基础操作
  • 前端开发中页面优化的方法
  • Qt QDockWidget详解以及例程