代码随想录训练营day56
创始人
2024-01-25 14:50:32
0

题目一:两个字符串的删除操作

力扣题目链接

题目描述:

给定两个单词 word1 和 word2 ,返回使得 word1 和  word2 相同所需的最小步数

每步 可以删除任意一个字符串中的一个字符。

思路分析:代码随想录

  1. 确定dp数组(dp table)以及下标的含义
  2. 确定递推公式:dp[i][j] = min(dp[i - 1][j] + 1, dp[i][j - 1] + 1)
  3. dp数组如何初始化:dp[i][0] = i
  4. 确定遍历顺序:遍历顺序一定是从上到下,从左到右
  5. 举例推导dp数组

解法: 

class Solution {public int minDistance(String word1, String word2) {int len1 = word1.length();int len2 = word2.length();int[][] dp = new int[len1 + 1][len2 + 1];for (int i = 1; i <= len1; i++) {for (int j = 1; j <= len2; j++) {if (word1.charAt(i - 1) == word2.charAt(j - 1)) {dp[i][j] = dp[i - 1][j - 1] + 1;} else {dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]);}}}return len1 + len2 - dp[len1][len2] * 2;}
}

题目二:编辑距离

力扣题目链接

题目描述:

给你两个单词 word1 和 word2, 请返回将 word1 转换成 word2 所使用的最少操作数  。

你可以对一个单词进行如下三种操作:

  • 插入一个字符
  • 删除一个字符
  • 替换一个字符

思路分析:代码随想录

  1. 确定dp数组(dp table)以及下标的含义:dp[i][j] 表示以下标i-1为结尾的字符串word1,和以下标j-1为结尾的字符串word2,最近编辑距离为dp[i][j]
  2. 确定递推公式:dp[i][j] = min({dp[i - 1][j - 1], dp[i - 1][j], dp[i][j - 1]}) + 1
  3. dp数组如何初始化:dp[0][j] = j
  4. 确定遍历顺序:遍历顺序一定是从左到右,从上到下
  5. 举例推导dp数组

解法: 

class Solution {public int minDistance(String word1, String word2) {int m = word1.length();int n = word2.length();int[][] dp = new int[m + 1][n + 1];// 初始化for (int i = 1; i <= m; i++) {dp[i][0] =  i;}for (int j = 1; j <= n; j++) {dp[0][j] = j;}for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {// 因为dp数组有效位从1开始// 所以当前遍历到的字符串的位置为i-1 | j-1if (word1.charAt(i - 1) == word2.charAt(j - 1)) {dp[i][j] = dp[i - 1][j - 1];} else {dp[i][j] = Math.min(Math.min(dp[i - 1][j - 1], dp[i][j - 1]), dp[i - 1][j]) + 1;}}}return dp[m][n];}
}

相关内容

热门资讯

抗战英雄浩气长存|刘老庄八十二...   1943年3月,侵华日军对江苏北部淮海抗日根据地进行大规模“扫荡”,17日,日伪军1600余人分...
中国战略性新兴产业发展势头强劲... 国际在线报道(记者王洹星):27日,由中国国家发展和改革委员会等相关部门联合主办的第二届战略性新兴产...
创业板改革激发深圳创新活力 创... 确定不再关注此人吗确定取消原标题:创业板改革激发深圳创新活力■深圳特区报记者熊子恒日前,中央全面深化...
创业板就要实施注册制了 创业板... 新闻晨报讯(首席记者连建明)创业板就需要实施注册制了。2020年4月27日,中央政府全方位推进改革联...
发改委:长三角一体化创新创业合... 发改委:长三角一体化创新创业合作推进会在杭州召开发改委网站长三角一体化创新创业合作推进会在杭州召开国...
中山澳门共建粤澳青年创新创业基... 3月29日,《关于建设粤澳青年创新创业基地(中山)的合作框架协议》在澳门签署,标志着中山与澳门合作示...
5g为产业发展注入5g会带来哪... 5G本身就是一个巨大的新兴产业。同时,在5G这一新型基础设施之上,云计算、大数据、物联网、人工智能等...
5g新科技赋能中国新兴媒体产业... 确定不再关注此人吗确定取消原标题:5G新科技赋能中国新兴媒体产业融合发展第七届中国新兴媒体产业融合发...
豫确定十个重点培育新兴产业 看... (香港文汇网记者冯雷河南报道)1月15日下午,记者从河南省政府新闻办召开的新闻发布会获悉,现代生物和...
安徽舒城县青年创业者协会成立 ... 12月5日,安徽省舒城县青年创业者协会成立大会在舒怡大酒店召开。来自全县商协会代表、各乡镇的优秀创业...