| 1 | var oneAway = function(string1, string2) { |
| 2 | // insert a char for str1 -> remove a char for str2 |
| 3 | var checkOneMissing = function(first, second) { |
| 4 | if (first.length !== second.length - 1) { |
| 5 | return false; |
| 6 | } else { |
| 7 | var mulligan = false; |
| 8 | var fP = 0; // first Pointer |
| 9 | var sP = 0; // second Pointer |
| 10 | while (fP < first.length) { |
| 11 | if (first[fP] !== second[sP]) { |
| 12 | if (mulligan) { |
| 13 | return false; |
| 14 | } else { |
| 15 | mulligan = true; |
| 16 | sP++; // second length is longer |
| 17 | } |
| 18 | } else { |
| 19 | fP++; |
| 20 | sP++; |
| 21 | } |
| 22 | } |
| 23 | return true; |
| 24 | } |
| 25 | }; |
| 26 | |
| 27 | var checkOneDiff = function(first, second) { |
| 28 | if (first.length !== second.length) { |