字串有三種編輯操作:插入乙個字元、刪除乙個字元或者替換乙個字元。
給定兩個字串,編寫乙個函式判定它們是否只需要一次(或者零次)編輯。
輸入:first = 「aple」 second = 「ple」
輸出:true
比較字串的長度;
若math.abs(first.length()-second.length())>1,返回false.
正向尋找字串中首個不同字元所在的下標位置first1, first2;
逆向查詢字串中首個不同字元所在的下標位置end1, end2;
若end1-first1<1 && end2-first2<1為真,返回true,反之,false;
class solution else
break;
}return fs-end1<1 && se-end2<1;
}}
01 05 一次編輯
開始想使用鍊錶解決,發現替換的操作不容易操作。這個陣列的splice方法確實很有幫助。param first param second return var oneeditaway function first,second var maxlength diff 0?first.length sec...
面試題 01 05 一次編輯
字串有三種編輯操作 插入乙個字元 刪除乙個字元或者替換乙個字元。給定兩個字串,編寫乙個函式判定它們是否只需要一次 或者零次 編輯。示例 1 輸入 first pale second ple 輸出 true 分情況討論 長度差超過2 肯定錯 len1 len2 可能是替換 len1 len2 是刪除,...
面試題 01 05 一次編輯(動態規劃)
面試題 01.05.一次編輯 字串有三種編輯操作 插入乙個字元 刪除乙個字元或者替換乙個字元。給定兩個字串,編寫乙個函式判定它們是否只需要一次 或者零次 編輯。示例 1 輸入 first pale second ple 輸出 true示例 2 輸入 first pales second pal 輸出...