JS使用栈判断给定字符串是否是回文算法示例


Posted in Javascript onMarch 04, 2019

本文实例讲述了JS使用栈判断给定字符串是否是回文算法。分享给大家供大家参考,具体如下:

/*使用栈stack类的实现*/
function stack() {
  this.dataStore = [];//保存栈内元素,初始化为一个空数组
  this.top = 0;//栈顶位置,初始化为0
  this.push = push;//入栈
  this.pop = pop;//出栈
  this.peek = peek;//查看栈顶元素
  this.clear = clear;//清空栈
  this.length = length;//栈内存放元素的个数
}
function push(element){
  this.dataStore[this.top++] = element;
}
function pop(){
  return this.dataStore[--this.top];
}
function peek(){
  return this.dataStore[this.top-1];
}
function clear(){
  this.top = 0;
}
function length(){
  return this.top;
}
/*使用栈判断给定字符串是否是回文的算法*/
function isPalindrome(word){
  var s = new stack();
  for(var i = 0;i < word.length;i++){
    s.push(word[i]);
  }
  var rword = "";
  while(s.length() > 0){
    rword += s.pop();
  }
  if(word == rword){
    return true;
  }else{
    return false;
  }
}
var word1 = "racecar";
if(isPalindrome(word1)){
  console.log(word1 + " is a palindrome")//racecar is a palindrome
}

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行结果:

JS使用栈判断给定字符串是否是回文算法示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
你需要知道的10个最佳javascript开发实践小结
Apr 15 Javascript
js取得html iframe中的元素和变量值
Jun 30 Javascript
javascript实现依次输入input自动定焦
Dec 23 Javascript
Ajax分页插件Pagination从前台jQuery到后端java总结
Jul 22 Javascript
巧用jQuery选择器提高写表单效率的方法
Aug 19 Javascript
AngularJS实现一次监听多个值发生的变化
Aug 31 Javascript
JavaScript与Java正则表达式写法的区别介绍
Aug 15 Javascript
详解Nuxt.js部署及踩过的坑
Aug 07 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
Aug 30 Javascript
vue2.0 路由模式mode=&quot;history&quot;的作用
Oct 18 Javascript
微信小程序动画(Animation)的实现及执行步骤
Oct 28 Javascript
js控制随机数生成概率代码实例
Mar 21 Javascript
微信小程序textarea层级过高(盖住其他元素)问题的解决办法
Mar 04 #Javascript
一步快速解决微信小程序中textarea层级太高遮挡其他组件
Mar 04 #Javascript
使用ESLint禁止项目导入特定模块的方法步骤
Mar 04 #Javascript
微信小程序textarea层级过高的解决方法
Mar 04 #Javascript
浅析vue中的MVVM实现原理
Mar 04 #Javascript
JavaScript实现的九种排序算法
Mar 04 #Javascript
如何在JavaScript中优雅的提取循环内数据详解
Mar 04 #Javascript
You might like
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
php 输入输出流详解及示例代码
2016/08/25 PHP
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
小结Node.js中非阻塞IO和事件循环
2014/09/18 Javascript
JavaScript常用的返回,自动跳转,刷新,关闭语句汇总
2015/01/13 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
jquery实现图片上传前本地预览功能
2016/05/10 Javascript
Node.js 实现简单小说爬虫实例
2016/11/18 Javascript
jQuery事件绑定方法学习总结(推荐)
2016/11/21 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
vue实现底部菜单功能
2018/07/24 Javascript
JavaScript实现多态和继承的封装操作示例
2018/08/20 Javascript
详解如何用VUE写一个多用模态框组件模版
2018/09/27 Javascript
vue车牌号校验和银行校验实战
2019/01/23 Javascript
通过实例了解js函数中参数的传递
2019/06/15 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
2020/08/14 Javascript
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
Python中的Numpy矩阵操作
2018/08/12 Python
详解Python 解压缩文件
2019/04/09 Python
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
ruby如何进行集成操作?Ruby能进行多重继承吗?
2013/10/16 面试题
销售找工作求职信
2013/12/20 职场文书
生物制药自我鉴定
2014/01/25 职场文书
抄作业检讨书
2014/02/17 职场文书
食品业务员岗位职责
2014/03/18 职场文书
合伙开公司协议书范本
2014/10/28 职场文书
单位介绍信格式
2015/01/31 职场文书
2015年仓库管理工作总结
2015/05/25 职场文书
2015年办税服务厅工作总结
2015/07/23 职场文书
门卫管理制度范本
2015/08/05 职场文书
Django分页器的用法你都了解吗
2021/05/26 Python
python基础学习之递归函数知识总结
2021/05/26 Python