上海网站建设培训班设计自己的签名
news/
2025/9/28 4:00:02/
文章来源:
上海网站建设培训班,设计自己的签名,常见网站建设工具有哪些,上饶福田集团思路 本题也是动态规划的解法#xff0c;dp[i][j]代表的意思就是word1中0~i的字符串和word2中0 ~ j的字符串相等需要的步数#xff0c;也是通过判断尾部字符是否相等的方式#xff0c;如果相等的话也就不需要改动了取dp[i-1][j-1]的步数就行#xff0c;如果不相等的话需要找…思路 本题也是动态规划的解法dp[i][j]代表的意思就是word1中0~i的字符串和word2中0 ~ j的字符串相等需要的步数也是通过判断尾部字符是否相等的方式如果相等的话也就不需要改动了取dp[i-1][j-1]的步数就行如果不相等的话需要找个最小值有可能是i结尾字符串和j-1结尾字符串重合度高步数少也有可能是j结尾字符串和i-1结尾字符串重合度高步数少两者取步数最小的情况然后减去另一个尾部字符1
代码示例
func minDistance(word1 string, word2 string) int {dp:make([][]int,len(word1))for i:0;ilen(dp);i{dp[i]make([]int,len(word2))}for i:0;ilen(word1);i{for j:0;jlen(word2);j{if word1[i]word2[j]{if i-10 j-10{dp[i][j]0}else if i-10{dp[i][j]j}else if j-10{dp[i][j]i}else{dp[i][j]dp[i-1][j-1]}}else{if i-10 j-10{dp[i][j]2}else if i-10{dp[i][j]dp[i][j-1]1}else if j-10{dp[i][j]dp[i-1][j]1}else{dp[i][j]min(dp[i-1][j],dp[i][j-1])1}}}}return dp[len(word1)-1][len(word2)-1]
}func min(a,b int)int{if ab{return a}return b
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/920232.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!