判断一个字符串是否是回文字符串

回文字符串是指正着读和反着读都相同的字符串。比如 "racecar""level"

方法 1:使用双指针法

通过使用两个指针,一个指向字符串的开始,另一个指向字符串的结束,逐个比较字符。

function isPalindrome(str) {
    let left = 0;
    let right = str.length - 1;

    // 遍历字符串的两端
    while (left < right) {
        // 如果字符不相等,返回 false
        if (str[left] !== str[right]) {
            return false;
        }
        left++;
        right--;
    }

    // 如果全部字符匹配,返回 true
    return true;
}

// 测试
console.log(isPalindrome("racecar"));  // 输出 true
console.log(isPalindrome("hello"));   // 输出 false

方法 2:使用内置的 reverse() 方法

可以通过将字符串反转并与原字符串比较来判断是否为回文字符串。 

function isPalindrome(str) {
    // 反转字符串并比较
    return str === str.split('').reverse().join('');
}

// 测试
console.log(isPalindrome("racecar"));  // 输出 true
console.log(isPalindrome("hello"));   // 输出 false

 

posted @ 2025-03-09 22:39  我是格鲁特  阅读(56)  评论(0)    收藏  举报