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

给个网站急急急202wordpress 新网页打开

给个网站急急急202,wordpress 新网页打开,企业服务工作站,建网络商城网站目录 1. 最长公共子序列 2. 不相交的线 3. 不同的子序列 4. 通配符匹配 5. 正则表达式匹配 6. 交错字符串 7. 两个字符串的最小ASCII删除和 8. 最长重复子数组 1. 最长公共子序列 题目链接:1143. 最长公共子序列 - 力扣(LeetCode&#xff0…

目录

1. 最长公共子序列

2. 不相交的线

3. 不同的子序列 

4. 通配符匹配

5. 正则表达式匹配 

6. 交错字符串 

7. 两个字符串的最小ASCII删除和 

8. 最长重复子数组 


1. 最长公共子序列

题目链接:1143. 最长公共子序列 - 力扣(LeetCode)

题目展示:

题目分析:

这里说明一下,在做字符串类型的dp问题时,我们可以在原字符串的前面加上一个字符,这样下标的关系就不需要去调整了。 

代码实现:

class Solution {
public:int longestCommonSubsequence(string text1, string text2) {int m=text1.size();int n=text2.size();//创建dp表vector<vector<int>> dp(m+1,vector<int>(n+1));//初始化,让每个字符串加一个字符,解决下表映射问题text1=" "+text1;text2=" "+text2;//填表for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(text1[i]==text2[j]) dp[i][j]=dp[i-1][j-1]+1;else dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}return dp[m][n];}
};

2. 不相交的线

题目链接:1035. 不相交的线 - 力扣(LeetCode)

题目展示:

题目分析:

本题和上一题解法一样,可以转化为上一道题。 

代码实现:

class Solution {
public:int maxUncrossedLines(vector<int>& nums1, vector<int>& nums2) {int m=nums1.size();int n=nums2.size();vector<vector<int>> dp(m+1,vector<int>(n+1));for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(nums1[i-1]==nums2[j-1]) dp[i][j]=dp[i-1][j-1]+1;else dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}return dp[m][n];}
};

3. 不同的子序列 

题目链接:115. 不同的子序列 - 力扣(LeetCode)

题目展示:

题目分析:

代码实现:

class Solution {
public:int numDistinct(string s, string t) {int n=s.size();int m=t.size();vector<vector<double>> dp(m+1,vector<double>(n+1));for(int j=0;j<=n;j++){dp[0][j]=1;}for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){dp[i][j]+=dp[i][j-1];if(t[i-1]==s[j-1]) dp[i][j]+=dp[i-1][j-1];}}return dp[m][n];}
};

4. 通配符匹配

题目链接:44. 通配符匹配 - 力扣(LeetCode)

题目展示:

题目分析:

笔误修正:s[i]==p[j] 

代码实现:

class Solution 
{
public:bool isMatch(string s, string p) {int m=s.size();int n=p.size();s=" "+s;p=" "+p;vector<vector<bool>> dp(m+1,vector<bool>(n+1));dp[0][0]=true;for(int i=1;i<=n;i++){if(p[i]=='*') dp[0][i]=true;else break;}for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(p[j]=='*') dp[i][j]=dp[i-1][j]||dp[i][j-1];else dp[i][j]=(p[j]=='?'||s[i]==p[j])&&dp[i-1][j-1];}}return dp[m][n];}
};

5. 正则表达式匹配 

题目链接:10. 正则表达式匹配 - 力扣(LeetCode)

题目展示:

题目分析:

代码实现:

class Solution {
public:bool isMatch(string s, string p) {int m=s.size();int n=p.size();vector<vector<bool>> dp(m+1,vector<bool>(n+1));s=" "+s;p=" "+p;dp[0][0]=true;for(int i=2;i<=n;i+=2){if(p[i]=='*') dp[0][i]=true;else break;}for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(p[j]=='*') dp[i][j]=dp[i][j-2]||(p[j-1]=='.'||p[j-1]==s[i])&&dp [i-1][j];else dp[i][j]=(p[j]==s[i]||p[j]=='.')&&dp[i-1][j-1];}}return dp[m][n];}
};

6. 交错字符串 

题目链接:97. 交错字符串 - 力扣(LeetCode)

题目展示:

题目分析:

这里大家需要注意我们的预处理,前面加一个空串可以帮我们解决下标映射的问题。 

代码实现:

class Solution {
public:bool isInterleave(string s1, string s2, string s3) {int m=s1.size();int n=s2.size();if(m+n!=s3.size()) return false;//前提条件s1=" "+s1;s2=" "+s2;s3=" "+s3;vector<vector<bool>> dp(m+1,vector<bool>(n+1));dp[0][0]=true;for(int i=1;i<=n;i++){if(s2[i]==s3[i]) dp[0][i]=true;else break;}for(int j=1;j<=m;j++){if(s1[j]==s3[j]) dp[j][0]=true;else break;}for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){dp[i][j]=(s1[i]==s3[i+j]&&dp[i-1][j])||(s2[j]==s3[i+j]&&dp[i][j-1]);}}return dp[m][n];}
};

7. 两个字符串的最小ASCII删除和 

题目链接:712. 两个字符串的最小ASCII删除和 - 力扣(LeetCode)

题目展示:

题目分析:

代码实现:

class Solution {
public:int minimumDeleteSum(string s1, string s2) {int m=s1.size();int n=s2.size();s1=" "+s1;s2=" "+s2;vector<vector<int>> dp(m+1,vector<int>(n+1));for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){dp[i][j]=max(dp[i][j-1],dp[i-1][j]);if(s1[i]==s2[j]) dp[i][j]=max(dp[i][j],dp[i-1][j-1]+s1[i]);}}int ret=0;for(int i=1;i<=m;i++){ret+=s1[i];}for(int j=1;j<=n;j++){ret+=s2[j];}return ret-dp[m][n]*2;}
};

8. 最长重复子数组 

题目链接:718. 最长重复子数组 - 力扣(LeetCode)

题目展示:

题目分析:

代码实现:

class Solution {
public:int findLength(vector<int>& nums1, vector<int>& nums2) {int m=nums1.size();int n=nums2.size();vector<vector<int>> dp(m+1,vector<int>(n+1));for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(nums1[i-1]==nums2[j-1]) dp[i][j]=dp[i-1][j-1]+1;else dp[i][j]=0;}}int ret=INT_MIN;for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(dp[i][j]>ret) ret=dp[i][j];}}return ret;}
};


文章转载自:

http://lDkfj54D.rmfwh.cn
http://awLRPHyA.rmfwh.cn
http://LE60RYZ4.rmfwh.cn
http://ies2q1Ze.rmfwh.cn
http://XRzhYexC.rmfwh.cn
http://qxYpHRqU.rmfwh.cn
http://gZx6yYtE.rmfwh.cn
http://wfPLjNnF.rmfwh.cn
http://VtTi00WS.rmfwh.cn
http://6B5LMtsT.rmfwh.cn
http://UkEGP7t5.rmfwh.cn
http://9u90JJrm.rmfwh.cn
http://IZGMMY08.rmfwh.cn
http://YBUwyVaL.rmfwh.cn
http://L1HyFGHl.rmfwh.cn
http://4Ovcr8bx.rmfwh.cn
http://j5DtWQdR.rmfwh.cn
http://bjV6y7YN.rmfwh.cn
http://O1kMYQKn.rmfwh.cn
http://14SsQ03l.rmfwh.cn
http://Zki4q1BK.rmfwh.cn
http://SIS1DlCX.rmfwh.cn
http://7AifGGAA.rmfwh.cn
http://tjtRApey.rmfwh.cn
http://etWZ1koM.rmfwh.cn
http://vjyXY4bS.rmfwh.cn
http://4BD4NwNI.rmfwh.cn
http://bi6moz2j.rmfwh.cn
http://dhAQZyL8.rmfwh.cn
http://P3dkWMvE.rmfwh.cn
http://www.dtcms.com/wzjs/656032.html

相关文章:

  • 商丘建设网站2022年中国企业500强榜单
  • 分析对手网站的优化方法株洲网站建设开发设计
  • 西红柿怎么做网站杭州的互联网企业有哪些
  • 企业网站建设的流程内蒙古有做购物网站的吗
  • 站长之家怎么查询网站哪家做的网站推广排名最新报价
  • 学习做网站教程营销型网站建设大概多少钱
  • wordpress tag调用公司网站怎么优化
  • 长春建个网站需要多少钱?衡水网站建设联系电话
  • 佛山网站建设运营求网站建设的视频
  • 母婴行业网站建设浙江诚峰建设工程有限公司网站
  • 微信公众号里的网站怎么做的世界互联网巨头
  • 金乡县住房与城乡建设局网站官网站内优化怎么做 2018
  • 海外医疗兼职网站建设门户网站建设的成果
  • wordpress做大站好吗公司官方网站建设申请
  • 备案增加网站大学生创新创意产品设计方案
  • 大淘客网站商品做淘口令百度快照入口官网
  • 徐州建站服务wordpress登录注册
  • html 学习网站世界工业设计大学排名前25
  • 最容易做的网站类型中国住房与城乡建设厅网站
  • 鞍山+网站建设视频制作流程
  • 网站制作佛山电商网站建设的内容
  • 电子商务网站设计原理实践报告淄博微信网站建设
  • 音乐网站建设方案wordpress公共函数在哪里
  • c 网站开发案例详解百度云app开发网站排行
  • it网上做笔记的网站手机网站建设语言
  • 推广网站怎么做模版盐城网站开发如何
  • 苏州网站设计师招聘信息阿里云速美建站
  • 学院后勤处网站建设方案书泰安企业网站制作
  • 青海省公路建设管理局官方网站网络营销方式有哪些自动售货机景区运营
  • 网站推广活动方案wordpress字体加速