面試題 01 05 一次編輯

2021-10-02 21:15:23 字數 545 閱讀 2996

字串有三種編輯操作:插入乙個字元、刪除乙個字元或者替換乙個字元。 給定兩個字串,編寫乙個函式判定它們是否只需要一次(或者零次)編輯。

示例 1:

輸入: 

first = "pale"

second = "ple"

輸出: true

分情況討論:

長度差超過2 肯定錯

len1==len2 可能是替換

len1>len2 是刪除, len11) return false; //長度差超過2

if(len1==len2) return judge(first, second, false);

if(len1>len2) return judge(first, second, true);

else return judge(second, first, true);

}private:

bool judge(string first, string second, bool function)

j++;

}return true;}};

面試題 01 05 一次編輯(動態規劃)

面試題 01.05.一次編輯 字串有三種編輯操作 插入乙個字元 刪除乙個字元或者替換乙個字元。給定兩個字串,編寫乙個函式判定它們是否只需要一次 或者零次 編輯。示例 1 輸入 first pale second ple 輸出 true示例 2 輸入 first pales second pal 輸出...

程式設計師面試金典 面試題01 05 一次編輯

本題可以轉化為求編輯距離。題目限定為可以插入 刪除 替換乙個字元,這種編輯距離稱為萊溫斯坦距離,同樣經常遇到的還有漢明距離等。字串有三種編輯操作 插入乙個字元 刪除乙個字元或者替換乙個字元。給定兩個字串,編寫乙個函式判定它們是否只需要一次 或者零次 編輯。示例 1 輸入 first pale sec...

程式設計師面試金典 面試題 01 05 一次編輯

字串有三種編輯操作 插入乙個字元 刪除乙個字元或者替換乙個字元。給定兩個字串,編寫乙個函式判定它們是否只需要一次 或者零次 編輯。示例 1 輸入 first pale second ple 輸出 true示例 2 輸入 first pales second pal 輸出 false根據字串長度差值判...