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 相关文章推荐
JS数组(Array)处理函数整理
Dec 07 Javascript
jQuery中data()方法用法实例
Dec 27 Javascript
JS JQUERY实现滚动条自动滚到底的方法
Jan 09 Javascript
Javascript核心读书有感之词法结构
Feb 01 Javascript
javascript跨域的方法汇总
Oct 23 Javascript
Webpack 实现 AngularJS 的延迟加载
Mar 02 Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 Javascript
JavaScript闭包_动力节点Java学院整理
Jun 27 Javascript
webpack 2的react开发配置实例代码
Jul 28 Javascript
微信小程序实现复选框效果
Dec 28 Javascript
小程序实现层叠卡片滑动效果
Aug 26 Javascript
axios实现简单文件上传功能
Sep 25 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使用Jpgraph绘制柱形图的方法
2015/06/10 PHP
PHP自动补全表单的两种方法
2017/03/06 PHP
php事务回滚简单实现方法示例
2017/03/28 PHP
php将从数据库中获得的数据转换成json格式并输出的方法
2018/08/21 PHP
重载toString实现JS HashMap分析
2011/03/13 Javascript
jquery $(&quot;#variable&quot;) 循环改变variable的值示例
2014/02/23 Javascript
js处理表格对table进行修饰
2014/05/26 Javascript
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
教你一步步用jQyery实现轮播器
2016/12/18 Javascript
移动端点击态处理的三种实现方式
2017/01/12 Javascript
JS通过调用微信API实现微信支付功能的方法示例
2017/06/29 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
Vue的自定义组件不能使用click方法的解决
2020/07/28 Javascript
Vue-router编程式导航的两种实现代码
2021/03/04 Vue.js
[01:02:00]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第三场 1月24日
2021/03/11 DOTA
python实现类似ftp传输文件的网络程序示例
2014/04/08 Python
Python中字典的setdefault()方法教程
2017/02/07 Python
Python正则表达式经典入门教程
2017/05/22 Python
python 读文件,然后转化为矩阵的实例
2018/04/23 Python
Django项目中包含多个应用时对url的配置方法
2018/05/30 Python
Python理解递归的方法总结
2019/01/28 Python
django框架模板语言使用方法详解
2019/07/18 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
2020/02/14 Python
详解Python修复遥感影像条带的两种方式
2020/02/23 Python
python virtualenv虚拟环境配置与使用教程详解
2020/07/13 Python
css3的@media属性实现页面响应式布局示例代码
2014/02/10 HTML / CSS
HTML5在a标签内放置块级元素示例代码
2013/08/23 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
波兰品牌鞋履在线商店:Eastend.pl
2020/01/11 全球购物
大学生专业个人学习的自我评价
2013/10/26 职场文书
教师节商场活动方案
2014/02/13 职场文书
《油菜花开了》教学反思
2014/02/22 职场文书
高一新生军训感言
2014/03/02 职场文书
五四演讲稿范文
2014/09/03 职场文书
党员思想汇报材料
2014/12/19 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书