32. One Edit Distance
Example 1
s0 = "quicksort"
s1 = "quicksort"
Output
trueExample 2
s0 = "mergesort"
s1 = "mergesorts"
Output
trueExample 3
Solution: (Without DP)
Last updated
s0 = "quicksort"
s1 = "quicksort"
Output
trues0 = "mergesort"
s1 = "mergesorts"
Output
trueLast updated
s0 = "mergeport"
s1 = "mergesorts"
Output
falsebool solve(string s0, string s1) {
int n = s0.length();
int m = s1.length();
int dif = abs(n - m);
if (dif > 1) {
return false;
}
int i = 0, j = 0;
int count = 0;
while (i < n && j < m) {
if (s0[i] == s1[j]) {
i++;
j++;
} else {
if (n > m) {
i++;
} else if (m > n) {
j++;
} else {
i++;
j++;
}
count++;
}
if (count > 1) {
return false;
}
}
return true;
}