javascript如何查找字符中的回文串?

本文介绍了一种使用JavaScript来查找字符串中回文子串的方法。通过在字符串中插入特殊字符并遍历检查,可以有效地找出最长的回文子串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:javascript如何查找字符中的回文串?

所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的。比如"level" 、 “aaabbaaa”

function  huiString(s) {
    var t = s.split("").join("#");
    t = "~" + t + "#";
    var c = 1, e = 0, cs = 0;//c表示错位相互比较,
    for (var j = 1; j < t.length - 1; j++, c = 1) {
        console.log(j-c)
        while (t[j + c] === t[j - c]){
            c++;
        }

        if (c > e) {//c++会产生大于e,将c赋予e,cs等于j
            e = c;
            cs = j;
        }

    }

    var result = t.slice(cs - e + 1, cs + e).replace(/#/g, "").replace(/~/g, "");
    return result;
}
就会找到字符串中的回文串了。如果不是回文就会返回一个字母,没有做判断,希望大家自己加上
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值