Skip to content

Latest commit

 

History

History
38 lines (33 loc) · 860 Bytes

File metadata and controls

38 lines (33 loc) · 860 Bytes
  1. 验证回文串 II 给你一个字符串 s,最多 可以从中删除一个字符。

请你判断 s 是否能成为回文字符串:如果能,返回 true ;否则,返回 false 。

/**
 * @param {string} s
 * @return {boolean}
 */
var validPalindrome = function (s) {
    if (s.length < 2) return true

    function help(left, right) {
        while (left < right) {
            if (s[left] !== s[right]) {
                return false
            }
            left++
            right--
        }
        return true
    }

    let left = 0
    let right = s.length - 1
    while (left < right) {
        while (s[left] !== s[right]) {
            // 查找left++,或right--是否符合条件
            return help(left + 1, right) || help(left, right - 1)
        }
        left++
        right--
    }

    return true
};