给定一个字符串,问是否能通过添加一个字母将其变为回文串。js实现

这里采用对比两个字符串,找出共同字符输出,(共同字符的最大长度应该在第一次就输出,所以这里采取return ,直接跳出函数),当原来字符串的长度-最大共同字符长度==1时,就说明他们有一个不一样,即可以通过添加一个字符将其变为回文,输出YES

return的用法:返回这个函数值;然后定义a = 这个返回值。

var s1 = "coco";
var s2 = s1.split("").reverse().join("");
var S=sstr= "" ,L1=s1.length,L2=s2.length;
function findH(){
    if (L1>L2){ var s3=s1;s1=s2,s2=s3,L1=s2.length;}
    for ( var j=L1;j> 0 ;j--)
        for ( var i= 0 ;i<=L1-j;i++){
            sstr = s1.substr(i,j);
            if (s2.indexOf(sstr)>= 0 )
                return sstr;//oco
        }
    console.log('');
}
 var a =  findH();
 var len = a.length;
 var g = L1 - len;
 if(g==1){
     alert("YES");
 }

你可能感兴趣的:(给定一个字符串,问是否能通过添加一个字母将其变为回文串。js实现)