首页 > 试题广场 >

回文字符串

[编程题]回文字符串
  • 热度指数:6582 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
请补全JavaScript代码,要求以boolean的形式返回参数字符串是否为回文字符串。
const _isPalindrome = string => {
                // 补全代码
                if (!string) {
                    return false;
                }
                // 通过 Object.prototype.toString.call 方法,判断具体类型
                return Object.prototype.toString.call(string) === '[object String]';
            }
发表于 2023-05-09 17:21:02 回复(0)
const _isPalindrome = string => {
    // 补全代码
    let strArr = string.split(',');
    let len = strArr.length;
    if(len%2!==0){
        let mid = Math.floor(len/2);
        let l  = r = mid;
        while(l>0){
            if(strArr[l] !== strArr[r]){
                return false;
            }else{
                l--;
                r++;
                continue;
            }
        }
        return true;
    }
}

发表于 2023-05-06 21:52:21 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
        <script type="text/javascript">
            const _isPalindrome = (string) => {
              // 补全代码
              for (let i = 0; i < string.length / 2; i++) {
                if (string[i] !== string[string.length - 1 - i]) return false;
              }
              return true;
            };
        </script>
    </body>
</html>
发表于 2023-04-09 12:46:01 回复(0)
const _isPalindrome = string => {
                // 补全代码
               var n1= string.split('')
               var n2= string.split('')
               n2.reverse()
               n1.every((item,index)=>{
                   return item==n2[index]
               })  
            }


const_isPalindrome = string => {
                // 补全代码
               var n1= string.split('')
               var n2= string.split('')
               n2.reverse()
               count=0
            for(let i=0;i<n2.length;i++){
                if(n1[i]==n2[i])
                {
                    count++
                    if(count==n2.length){
                        return true
                    }
                }
                else{return false}
            }  
            }

发表于 2023-03-29 16:17:16 回复(0)
            const _isPalindrome = string => {
                // 补全代码
                let len=string.length
                if(len<=2) return true
                for(let i=0;i<Math.floor(len/2);i++){
                    if(string[i]!=string[len-i-1]){
                        return false
                    }
                }
                return true
         
            }

发表于 2023-02-09 17:12:55 回复(0)
擦,就我写了堆屎山
for (let i = 0; i <= Math.floor(string.length/2); i++) {
    if(string[i]==string[string.length-i-1]){
        if(i==Math.floor(string.length/2)){
            return true
        }
    }else{
        return false
    }
}

发表于 2023-01-02 23:46:44 回复(0)
<script type="text/javascript">
    const _isPalindrome = string => {
        // 补全代码
        let resever = string.split('').reverse()
        return resever.join('') == string ? true : false
    }
</script>

发表于 2022-11-30 00:03:13 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _isPalindrome = string => {
                // 补全代码
                let length = string.length;
                for(let i=0;i<Math.floor(length/2);i++){
                    if(string[i]!=string[length-1-i]) return false;
                }
                return true;
            }
        </script>
    </body>
</html>

发表于 2022-11-26 18:49:38 回复(0)
<script type="text/javascript">
            const _isPalindrome = string => {
                // 补全代码
                for(var i = 0; i<string.length/2 ;i++){
                    if(string[i]!==string[string.length-i-1])
                        return false
                }
                return true
            }
        </script>
发表于 2022-11-14 21:17:12 回复(0)
const _isPalindrome = string => {
                // 补全代码
                var nixuStr = string.split('').reverse('').join('')
                return string == nixuStr
            }

发表于 2022-11-05 08:12:49 回复(0)

 <script type="text/javascript">
            const _isPalindrome = string => {
                // 补全代码
                //建立正序列表
                let oldArr = string.split('').join();
                //建立一个逆序列表(将数组进行反转)
                let newArr = string.split('').reverse().join();
                //将两个列表使用join转化为字符串
                //进行判断两者是否相等
                if (oldArr == newArr) {
                    return true;
                }
                return false;
            }
        </script>

发表于 2022-10-15 11:26:55 回复(0)
发表于 2022-08-30 00:11:02 回复(0)
 const _isPalindrome = string => {
     // 补全代码
     return string.split('').reverse().join('') == string
 }

发表于 2022-08-21 10:43:30 回复(0)
const _isPalindrome = string => {
    // 补全代码
    let arr = Array.from(string)
    for (let i = 0, j = arr.length - 1; i <= arr.length / 2; i++, j--) {
        if (arr[i] != arr[j]) {
            return false
        }
    }
    return true
}

发表于 2022-07-22 00:28:07 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
         <script>
             const _isPalindrome = string => {
                 var l=0,r=string.length-1;
                while(l<r){
                    if(string[l]==string[r]){
                        r--,l++;
                    }
                    else{
                        return false
                    }
                }
                   return true;
              }
        </script>
    </body>
</html>
发表于 2022-07-21 17:49:47 回复(0)
const _isPalindrome = s => {
            let m = s.length;
            let res = [];
            let dp = new Array(m).fill([]).map(() => new Array(m).fill(false));
            // 遍历的顺序,从下到上,从左到右
            for (let i = m - 1; i >= 0; i--) {
                for (let j = i; j < m; j++) {
                    if (s[i] === s[j]) {
                        if (j - i <= 2 || dp[i + 1][j - 1]) {
                            dp[i][j] = true;
                        }
                    }
                }
            }
            return dp[0][s.length - 1];
        }

发表于 2022-07-18 14:48:54 回复(0)
str = str.toLowerCase(str)
    var reg = /(?![A-Za-Z0-9])./g
    str = str.replace(reg,'')
    // 先判断长度是否符合
    for(let i=0;i<str.length/2;i++){
        if(str[i]!==str[str.length-1-i]){
            return false
        }
    }
    return true

发表于 2022-07-17 09:57:19 回复(0)
<script type="text/javascript">
            const _isPalindrome = string => {
                // 补全代码
                let isHuiwen = true
                for(let i=0;i<string.length/2;i++){
                    if(string[i]!==string[string.length-i-1]){
                        isHuiwen=false
                    }
                }
                return isHuiwen
            }
        </script>
发表于 2022-07-03 23:05:21 回复(0)