确定在仅允许插入/删除/替换操作时是否可以将字符串转换为另一个字符串

Mat*_*tey 3 java string algorithm

我必须编写一个函数,它将两个单词(字符串)作为参数,并确定是否只使用一个一阶变换将第一个单词转换为第二个单词.

  • 一阶变换只改变一个单词中的一个字母

  • 允许的转换是:插入,删除和替换

    • insert =在单词的任何位置插入一个字母
    • remove =从单词中的任何位置删除一个字母
    • replace =用另一个字母替换一个字母

有什么建议?任何Java示例都会很棒!

Car*_*icz 5

想一想:如果你只允许进行一次转换,那么"之前"和"之后"之间的长度差异应该会给你一个非常强烈的提示,告诉你这三个转换中哪一个有成功的机会.出于同样的原因,您可以一眼就看出哪些变换根本不可能.

一旦你决定了哪个转型,问题的其余部分就会成为Brute Force Man和他的搭档Looping Lady的工作.