判断是否回文(palindromes)。

2017-07-07  本文已影响16人  Hoistthecolors

代码

function palindrome(str) {
    // 排除干扰项
    str = str.toLowerCase().replace(/[^a-z0-9]/g, '');
    // 设置边界条件
    if (str.length < 2) {
        return true;
    }
    // 检测首尾是否相等不相等,如果不等就直接返回 false
    if (str[0] !== str[str.length - 1]) {
        return false;
    }

    // 递归调用
    return palindrome(str.slice(1, -1));
}

解释

  • 整体思路是,递归地判断字符串的首尾是否相等
上一篇 下一篇

猜你喜欢

热点阅读