驗證回文字串2

2021-10-06 07:42:05 字數 633 閱讀 8297

把判斷是回文的抽成方法f1,

如果是直接返回true,

如果不是找到兩個錯誤的索引,兩個索引分別移動乙個位置即可

var validpalindrome = function (str)

else

}return true;

} let start =

0, end = str.length -1;

let res =

f1(start, end, str);if

(res ==

= true)

return true;

let [s, e]

= res;

let r1 =

f1(s +

1, e, str)

let r2 =

f1(s, e-

1, str)

return r1 ==

= true || r2 ==

= true;

}

進一步整理如下

var validpalindrome =

function

(s, flag = true)

;

680 驗證回文字串2

給定乙個非空字串 s,最多刪除乙個字元。判斷是否能成為回文字串。示例 1 輸入 aba 輸出 true 示例 2 輸入 abca 輸出 true 解釋 你可以刪除c字元。注意 字串只包含從 a z 的小寫字母。字串的最大長度是50000。思考 其實大的思路和驗證回文字串1相似,前後兩個指標,依次一一...

驗證回文字串

描述 給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。解法 字串中可能含有其他的字元,我們從字串的兩頭開始索引,如果左邊的字元不是字母或者數字字元,那麼讓左邊先走一步,同理右邊的也一樣。如果兩邊字元相同,那麼左邊和右邊同時走...

驗證回文字串

給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true示例 2 輸入 race a car 輸出 false將大寫字母全部轉化成小寫字母,將空格...