[leetcode]验证回文串[javascript]

https://leetcode-cn.com/problems/valid-palindrome/

描述

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明: 本题中,我们将空字符串定义为有效的回文串。

示例1:

输入: "A man, a plan, a canal: Panama"
输出: true

示例2:

输入: "race a car"
输出: false

分析

这道题我是先将字符串正则匹配只剩数组字母,接着循环挨个start和end相不相等就ok了

const isPalindrome = s => {
  let newStr = s.replace(/[^a-zA-Z0-9]/g, '').toLowerCase()
  let start = 0, end = newStr.length - 1
  while (start < end) {
    if (newStr[start] !== newStr[end]) {
      return false
    }
    start++
    end--
  }
  return true
}

猜你喜欢

转载自blog.csdn.net/u010690493/article/details/85109240