思路
做这一题前,必须把上一道题写了!
本题和上一题的区别是,这题允许操作word1 , 且多了替换和增加操作。我们一起看看转移有哪些变化。
1.问什么定义什么:
状态:dpi,j 代表word1的前i个字符 与 word2的前j个字符 的情况下,将word1转化为text2 的最少操作数。
对一个单词进行变换时,每一次操作可以选择以下三种动作之一:
给定初始单词 word1 和目标单词 word2,请计算把 word1 变为 word2 至少需要执行多少次操作。
约束条件
500。输入包含两个参数:
word1,表示初始单词;word2,表示目标单词。返回一个整数,表示将 word1 转换为 word2 所需的最少操作数。
输入
abc
yabd
输出
2
说明
将 abc 变为 yabd 最少需要 2 次操作。
先在开头插入字符 y,得到 yabc;再把末尾的 c 替换为 d,得到 yabd。因此最少操作数为 2。
输入
kitten
sitting
输出
3
说明
将 kitten 变为 sitting 最少需要 3 次操作。
先将 k 替换为 s,得到 sitten;再将 e 替换为 i,得到 sittin;最后在末尾插入 g,得到 sitting。因此最少操作数为 3。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册