农场主有两个牛群,分别由不同品种的牛组成。现在农场主想要让这两个牛群融合成一个新牛群,他可以对一个牛群进行如下三种操作: 引入一个新品种的牛 移除一个品种的牛 将一个品种的牛替换成另一个品种的牛 请计算将牛群1融合成牛群2所需的最少操作次数。
区块链毕设网qklbishe.com为您提供问题的解答
农场主有两个牛群,分别由不同品种的牛组成。现在农场主想要让这两个牛群融合成一个新牛群,他可以对一个牛群进行如下三种操作:
- 引入一个新品种的牛
- 移除一个品种的牛
- 将一个品种的牛替换成另一个品种的牛
请计算将牛群1融合成牛群2所需的最少操作次数。
# 编辑距离, dp[i][j]表示s1[i-1]到s2[j-1]
m, n = len(breed1), len(breed2)
dp = [[0 for _ in range(n+1)] for _ in range(m+1)]
# 初始化第一行列
for i in range(m+1):
dp[i][0] = i
for j in range(n+1):
dp[0][j] = j
for i in range(1, m+1):
for j in range(1, n+1):
if breed1[i-1] != breed2[j-1]:
dp[i][j] = min(dp[i-1][j], dp[i-1][j-1], dp[i][j-1]) + 1
else:
dp[i][j] = dp[i-1][j-1]
return dp[-1][-1]
00:15
以上就是关于问题农场主有两个牛群,分别由不同品种的牛组成。现在农场主想要让这两个牛群融合成一个新牛群,他可以对一个牛群进行如下三种操作: 引入一个新品种的牛 移除一个品种的牛 将一个品种的牛替换成另一个品种的牛 请计算将牛群1融合成牛群2所需的最少操作次数。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训