回文串是一个正读和反读都一样的字符串,例如 "level"、"deified" 和 "racecar" 都是回文串。
在 JavaScript 中,你可以使用以下方法来验证一个字符串是否是回文串:基本方法:
可以将字符串反转,然后与原始字符串进行比较来验证是否是回文串。function isPalindrome(str) {
const reversedStr = str.split('').reverse().join('');
return str === reversedStr;
}
console.log(isPalindrome("level")); // true
console.log(isPalindrome("hello")); // false双指针方法:
使用两个指针分别从字符串的开头和末尾向中间移动,逐个比较字符来验证是否是回文串。function isPalindrome(str) {
let left = 0;
let right = str.length - 1;
while (left < right) {
if (str[left] !== str[right]) {
return false;
}
left++;
right--;
}
return true;
}
console.log(isPalindrome("level")); // true
console.log(isPalindrome("hello")); // false这些方法都可以用来验证一个字符串是否是回文串。双指针方法在性能上稍微更好,因为它只需要遍历一半的字符,而不是完全反转整个字符串。
网友回复


