字符串-回文字符串

496 阅读1分钟

字符串的一些方法

似乎字符串的一些算法题都是借助于数组的

还有用指针的

还有正则

大小写转化

str.toUpperCase
str.toLocaleLowerCase

反转字符串

一定要记住reverse是Array原型上的方法,不要搞错

function reverseStr(str){
    return str.split('').reverse().join('')
}

判断回文字符串

方法一: 利用Array的reverse方法

functin isHuiwenStr(str) {
    return srt.split('').reverse().join('') === str
}

方法二: 回文字符串是对称的

functin isHuiwenStr(str) {
    const length = str.length
    const midIndex = Math.floor(length / 2)
    
    for(let i = 0; i < midIndex; i++) {
        if(str[i] !== str[length - 1 - i]) {
            return false
        }
    }
    
    return true
}

非空字符串删除一个元素,判断能否成为回文字符串

描述:给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。

    function isTransHuiwenStr(str) {
        const arr = str.split('')
        for(let i = 0; i < str.length; i++) {
            const copy = [...arr]
            copy.splice(i, 1)
            if (copy.reverse().join('') === copy.join('')) {
                return true
            } 
        }
        return false
    }