自己建设网站模版,wordpress页面可以收录文章不收录,中国备案查询网站,公司网站建设方案书字符串有三种编辑操作:插入一个英文字符、删除一个英文字符或者替换一个英文字符。 给定两个字符串#xff0c;编写一个函数判定它们是否只需要一次(或者零次)编辑。
示例 1:
输入:
first pale
second ple
输出: True
示例 2:
输入:
first 编写一个函数判定它们是否只需要一次(或者零次)编辑。
示例 1:
输入:
first pale
second ple
输出: True
示例 2:
输入:
first pales
second pal
输出: False
代码如下
//只进行一次编辑有三种情况
//1.替换两个字符串的长度相等但其中有一个字符不相等
//2.插入firstsecond,并且只有一个字符不一样
//3.删除firstsecond,并且只有一个字符不一样
class Solution {
public:bool oneEditAway(string first, string second) {int mfirst.size();int nsecond.size();if(n-m1||m-n1){return false;//两个字符串的长度相差大于1不只进行一次操作}if(nm1){return oneEditAway(second,first);//插入--与删除刚好相反}int i0,j0;int count0;while(imjn){if(first[i]!second[j]){count;if(count2){return false;}if(mn)//删除{j--;//为了让原地等待先回退一步后面会在向右移一步}}i;//每次向右移一步j;//每次向左移一步}return true;}
};