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 相关文章推荐
javascript编程起步(第二课)
Feb 27 Javascript
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
用JavaScript实现单继承和多继承的简单方法
Mar 29 Javascript
JavaScript 程序编码规范
Nov 23 Javascript
javascript suggest效果 自动完成实现代码分享
Feb 17 Javascript
常见的原始JS选择器使用方法总结
Apr 09 Javascript
JavaScript使用cookie实现记住账号密码功能
Apr 27 Javascript
jquery实现全选、反选、获得所有选中的checkbox
Sep 13 Javascript
简易的JS计算器实现代码
Oct 18 Javascript
angularjs使用gulp-uglify压缩后执行报错的解决方法
Mar 07 Javascript
Vue中关闭弹窗组件时销毁并隐藏操作
Sep 01 Javascript
Vue实现多页签组件
Jan 14 Vue.js
微信小程序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 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
2010/10/22 PHP
PHP以mysqli方式连接类完整代码实例
2014/07/15 PHP
php生成随机数的三种方法
2014/09/10 PHP
Laravel 框架返回状态拦截代码
2019/10/18 PHP
javascript 窗口加载蒙板 内嵌网页内容
2010/11/19 Javascript
利用javascript打开模态对话框(示例代码)
2014/01/11 Javascript
jquery获取对象的方法足以应付常见的各种类型的对象
2014/05/14 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
jQuery弹层插件jquery.fancybox.js用法实例
2016/01/22 Javascript
Vue中定义全局变量与常量的各种方式详解
2017/08/23 Javascript
基于JavaScript实现表格滚动分页
2017/11/22 Javascript
React 组件中的 bind(this)示例代码
2018/09/16 Javascript
详解Puppeteer前端自动化测试实践
2019/02/21 Javascript
vue实现歌手列表字母排序下拉滚动条侧栏排序实时更新
2019/05/14 Javascript
微信小程序实现二维码签到考勤系统
2020/01/16 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
node中短信api实现验证码登录的示例代码
2021/01/20 Javascript
Python读取环境变量的方法和自定义类分享
2014/11/22 Python
python 实现红包随机生成算法的简单实例
2017/01/04 Python
python调用xlsxwriter创建xlsx的方法
2018/05/03 Python
python在回调函数中获取返回值的方法
2019/02/22 Python
python设置代理和添加镜像源的方法
2020/02/14 Python
python 录制系统声音的示例
2020/12/21 Python
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
Nike爱尔兰官方网站:Nike.com (IE)
2018/03/12 全球购物
财务会计专业毕业生自荐信
2013/10/02 职场文书
自荐信要包含哪些内容
2013/11/06 职场文书
会计专业毕业生求职信分享
2014/01/03 职场文书
物流合作计划书
2014/01/10 职场文书
财产分割协议书范本
2014/11/03 职场文书
2014公司年终工作总结
2014/12/19 职场文书
高中语文教材(文学文化常识大全一)
2019/08/13 职场文书
CSS完成视差滚动效果
2021/04/27 HTML / CSS
Python机器学习之逻辑回归
2021/05/11 Python
Python中np.random.randint()参数详解及用法实例
2022/09/23 Python