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 相关文章推荐
jquery HotKeys轻松搞定键盘事件代码
Aug 30 Javascript
js chrome浏览器判断代码
Mar 28 Javascript
js打印纸函数代码(递归)
Jun 18 Javascript
JS操作iframe里的dom(实例讲解)
Jan 29 Javascript
JavaScript对象学习小结
Sep 02 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
Oct 26 Javascript
js获取及判断键盘按键的方法
Dec 01 Javascript
js实现三级联动效果(简单易懂)
Mar 27 Javascript
JavaScript调用模式与this关键字绑定的关系
Apr 21 Javascript
vue src动态加载请求获取图片的方法
Oct 17 Javascript
基于Vue实现可以拖拽的树形表格实例详解
Oct 18 Javascript
layui table去掉右侧滑动条的实现方法
Sep 05 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
php+ajax实现文件切割上传功能示例
2020/03/03 PHP
HTML页面如何象ASP一样接受参数
2007/02/07 Javascript
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
jquery1.4.2 for Visual studio 2010 模板文件
2010/07/14 Javascript
使用按钮控制以何种方式打开新窗口的属性介绍
2012/12/17 Javascript
NodeJs基本语法和类型
2015/02/13 NodeJs
js实现文字闪烁特效的方法
2015/12/17 Javascript
基于jquery实现无限级树形菜单
2016/03/22 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
2016/06/29 Javascript
微信+angularJS的SPA应用中用router进行页面跳转,jssdk校验失败问题解决
2016/09/09 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
js实现数字递增特效【仿支付宝我的财富】
2017/05/05 Javascript
VUE 更好的 ajax 上传处理 axios.js实现代码
2017/05/10 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
在vue组件中使用axios的方法
2018/03/16 Javascript
nodejs 十六进制字符串型数据与btye型数据相互转换
2018/07/30 NodeJs
javascript面向对象三大特征之多态实例详解
2019/07/24 Javascript
微信小程序实现按字母排列选择城市功能
2019/11/25 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
Python3中的2to3转换工具使用示例
2015/06/12 Python
Python两个内置函数 locals 和globals(学习笔记)
2016/08/28 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
python使用多进程的实例详解
2018/09/19 Python
Python socket实现多对多全双工通信的方法
2019/02/13 Python
python+opencv实现车牌定位功能(实例代码)
2019/12/24 Python
Python Selenium 设置元素等待的三种方式
2020/03/18 Python
基于python实现检索标记敏感词并输出
2020/05/07 Python
Python如何爬取51cto数据并存入MySQL
2020/08/25 Python
CSS的background属性及CSS3的背景图片设置总结
2016/06/13 HTML / CSS
台湾旅游网站:雄狮旅游网
2017/08/16 全球购物
俄罗斯宠物用品网上商店:ZooMag
2019/12/12 全球购物
C语言中一个结构不能包含指向自己的指针吗
2012/05/25 面试题
财务支持类个人的自我评价
2014/02/14 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
导游词范文
2015/02/13 职场文书
spring cloud 配置中心客户端启动遇到的问题
2021/09/25 Java/Android