js如何找出字符串中的最长回文串


Posted in Javascript onJune 04, 2018

本文实例为大家分享了js找出字符串中的最长回文串的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <title>回文</title>
 <link rel="stylesheet" href="">
</head>
<body>
 <script type="text/javascript">

  function longestPalindrome(str){

   let palindromeStr=""; //记录最长回文串
   let tempPalindrome=""; //记录当前回文串

   for(let i=0;i<str.length;i++){ //i记录当前遍历字符串的开始位置,循环依次向后遍历

    tempPalindrome=""; //每次新的一轮开始时,将临时记录回文串的变量清空

    for(let j=i;j<str.length;j++){ //每次开始循环是以当前i所在的下标位置为开始遍历字符串的起始位置,直到遍历到结束位置

     tempPalindrome+=str.charAt(j); //逐个增加字符串的长度

     if(isPalindrome(tempPalindrome) && tempPalindrome.length>palindromeStr.length){   //将当前的字符串传入isPalindrome进行回文判断,如果是回文串,则判断当前回文串长度是否大于之前记录的最长回文串的长度,如果大于之前的回文串,则更新之前的记录即可

      palindromeStr=tempPalindrome; //更新回文串

     }
    }
   }

   return palindromeStr; //返回最终的最长的回文串

  }

  function isPalindrome(s){ //判断是否为回文串
   let rev=s.split('').reverse().join(''); //字符串逆转操作
   return rev===s;
  }

  //测试
  console.log(longestPalindrome("ddabbade"));//输出dabbad

 </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery计算textarea中文字数(剩余个数)的小程序
Nov 28 Javascript
iframe实用操作锦集
Apr 22 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
Dec 04 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
Jan 18 Javascript
React-Native使用Mobx实现购物车功能
Sep 14 Javascript
Vue from-validate 表单验证的示例代码
Sep 26 Javascript
浅谈mint-ui 填坑之路
Nov 06 Javascript
在 Angular中 使用 Lodash 的方法
Feb 11 Javascript
详解Webpack loader 之 file-loader
Nov 07 Javascript
vue使用map代替Aarry数组循环遍历的方法
Apr 30 Javascript
Vue3 响应式侦听与计算的实现
Nov 11 Javascript
CocosCreator如何实现划过的位置显示纹理
Apr 14 Javascript
详解Webpack + ES6 最新环境搭建与配置
Jun 04 #Javascript
jQuery实现的简单获取索引功能示例
Jun 04 #jQuery
JS实现统计字符串中字符出现个数及最大个数功能示例
Jun 04 #Javascript
Vue父子组建的简单通信之控制开关Switch的实现
Jun 04 #Javascript
深入浅析JS中的严格模式
Jun 04 #Javascript
详解如何在你的Vue项目配置vux
Jun 04 #Javascript
详解vue-loader在项目中是如何配置的
Jun 04 #Javascript
You might like
PHP防止刷新重复提交页面的示例代码
2015/11/11 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
PHP快速排序算法实现的原理及代码详解
2019/04/03 PHP
KindEditor在php环境下上传图片功能集成的方法示例
2020/07/20 PHP
非常不错的功能强大代码简单的管理菜单美化版
2008/07/09 Javascript
jquery 选择器引擎sizzle浅析
2013/02/06 Javascript
更快的异步执行(setTimeout多浏览器)
2014/08/12 Javascript
仿JQuery输写高效JSLite代码的一些技巧
2015/01/13 Javascript
JavaScript Function函数类型介绍
2015/04/08 Javascript
Json对象和字符串互相转换json数据拼接和JSON使用方式详细介绍(小结)
2016/10/25 Javascript
ES6概念 Symbol toString()方法
2016/12/25 Javascript
bootstrap弹出层的多种触发方式
2017/05/10 Javascript
JS switch判断 三目运算 while 及 属性操作代码
2017/09/03 Javascript
使用clipboard.js实现复制功能的示例代码
2017/10/16 Javascript
vue.js todolist实现代码
2017/10/29 Javascript
JS实现textarea通过换行或者回车把多行数字分割成数组并且去掉数组中空的值
2018/10/29 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
2019/04/09 Javascript
thinkjs微信中控之微信鉴权登陆的实现代码
2019/08/08 Javascript
使用axios请求时,发送formData请求的示例
2019/10/29 Javascript
vue中注册自定义的全局js方法
2019/11/15 Javascript
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
[30:51]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第一局
2016/03/04 DOTA
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
Django如何配置mysql数据库
2018/05/04 Python
python 读写文件,按行修改文件的方法
2018/07/12 Python
Python pygorithm模块用法示例【常见算法测试】
2018/08/16 Python
python版大富翁源代码分享
2018/11/19 Python
Keras自定义实现带masking的meanpooling层方式
2020/06/16 Python
python 对xml解析的示例
2021/02/27 Python
通过css3的filter滤镜改变png图片的颜色的示例代码
2020/05/06 HTML / CSS
怎样实现H5+CSS3手指滑动切换图片的示例代码
2019/05/05 HTML / CSS
体育教育毕业生自荐信
2013/11/21 职场文书
2014新年寄语
2014/01/20 职场文书
出资证明书范本(标准版)
2014/09/24 职场文书
校园广播稿范文
2015/08/19 职场文书
python 爬取天气网卫星图片
2021/06/07 Python