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

太原集团网站建设谷歌商店下载

太原集团网站建设,谷歌商店下载,工程建设方案,wordpress 产品库115. 不同的子序列 但相对于刚讲过 392.判断子序列,本题 就有难度了 ,感受一下本题和 392.判断子序列 的区别。 代码随想录 dp[i][j]表示以s[i-1]结尾的子序列中,出现以t[j-1]结尾的t的个数 注意初始化时,dp[0][0]的值不要重复初…

115. 不同的子序列

但相对于刚讲过 392.判断子序列,本题 就有难度了 ,感受一下本题和 392.判断子序列 的区别。

代码随想录

 dp[i][j]表示以s[i-1]结尾的子序列中,出现以t[j-1]结尾的t的个数
注意初始化时,dp[0][0]的值不要重复初始化,应该为1,空字符串s删除0个元素可以变成空字符串t

class Solution:def numDistinct(self, s: str, t: str) -> int:n1=len(s)n2=len(t)dp=[[0]*(n2+1) for _ in range(n1+1)]for i in range(n1):dp[i][0]=1for j in range(1,n2):dp[0][j]=0for i in range(1,n1+1):for j in range(1,n2+1):if s[i-1]==t[j-1]:dp[i][j]=dp[i-1][j-1]+dp[i-1][j]else:dp[i][j]=dp[i-1][j]return dp[-1][-1]

583. 两个字符串的删除操作

本题和动态规划:115.不同的子序列 相比,其实就是两个字符串都可以删除了,情况虽说复杂一些,但整体思路是不变的。

代码随想录

参照115的思路推导,

1. 注意初始化边界值,需到n1+1和n2+1才能完全覆盖

2. word1[i-1]不等于word2[j-1]时,存在三种情况,

情况一:删word1[i - 1],最少操作次数为dp[i - 1][j] + 1

情况二:删word2[j - 1],最少操作次数为dp[i][j - 1] + 1

情况三:同时删word1[i - 1]和word2[j - 1],操作的最少次数为dp[i - 1][j - 1] + 2

class Solution:def minDistance(self, word1: str, word2: str) -> int:n1=len(word1)n2=len(word2)dp=[[0]*(n2+1) for _ in range(n1+1)]for i in range(n1+1):dp[i][0]=ifor j in range(n2+1):dp[0][j]=jfor i in range(1,n1+1):for j in range(1,n2+1):if word1[i-1]==word2[j-1]:dp[i][j]=dp[i-1][j-1]else:dp[i][j]=min(dp[i-1][j]+1,dp[i][j-1]+1,dp[i-1][j-1]+2)return dp[-1][-1]

72. 编辑距离

最终我们迎来了编辑距离这道题目,之前安排题目都是为了 编辑距离做铺垫。

代码随想录

如果word1[i - 1]等于word2[j - 1] 那么说明不用任何编辑,dp[i][j] 就应该是 dp[i - 1][j - 1],即dp[i][j] = dp[i - 1][j - 1];

如果不相等,此时需要编辑:

1. word1删除一个元素,即 dp[i][j] = dp[i - 1][j] + 1;

2. word1添加一个元素和word2删除一个元素的操作数一样,即 dp[i][j] = dp[i][j - 1] + 1;

3. word1替换一个元素,word1替换word1[i-1]使其与word2[j-1]相同,即p[i][j] = dp[i - 1][j - 1] + 1;

class Solution:def minDistance(self, word1: str, word2: str) -> int:n1=len(word1)n2=len(word2)dp=[[0]*(n2+1) for _ in range(n1+1)]for i in range(n1+1):dp[i][0]=ifor j in range(n2+1):dp[0][j]=jfor i in range(1,n1+1):for j in range(1,n2+1):if word1[i-1]==word2[j-1]:dp[i][j]=dp[i-1][j-1]else:dp[i][j]=min(dp[i-1][j-1],dp[i-1][j],dp[i][j-1])+1return dp[-1][-1]
http://www.dtcms.com/wzjs/358384.html

相关文章:

  • 温州模板网站建站河南网站建设哪个公司做得好
  • 上海广告牌制作公司临沂seo
  • 做网站 赚钱东莞网站开发公司
  • 微商怎么做网站搜索引擎推广的费用
  • 广州白云做网站网站怎么才能被百度收录
  • 租用网站如何制作网页产品推广思路
  • 网站备案密码格式百度网
  • 国内投资咨询网站 html模板西安网站建设公司
  • 都昌县建设局网站网络营销推广合作
  • 网站开发外贸网站的优化与推广分析
  • 网站公司怎么做的小红书怎么做关键词排名优化
  • 网站建设行情谷歌搜索引擎在线
  • 常州做网站的重庆百度推广开户
  • 公司做seo网站山西seo推广
  • 在线旅游网站建设方案网店如何营销推广
  • 怎么查询网站真假备案网站提交收录软件
  • 上海软件app开发流程深圳做seo有哪些公司
  • 哪个网站做二手车买卖chrome浏览器
  • 东莞做网站it s竞价托管外包费用
  • 做动图的网站郭生b如何优化网站
  • 一级a做爰片免费网站国产网站建设优化推广系统
  • 公司网站的建设内容怎么写网上商城网站开发
  • 网站开发项目广州网站建设费用
  • 做网站时点击显示二维码引流推广的平台
  • 太原市免费网站建设中国站长网站
  • ps怎么做电商网站太原免费网站建站模板
  • 怎么样再自己的网站做二级域名推广引流平台
  • 美团网站建设总体需求与目标免费的关键词优化工具
  • 武汉做网站的公司排名百度搜索引擎盘搜搜
  • 做网站要源码吗热门关键词