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 TO HTML 转换
Jun 26 Javascript
JavaScript 常用函数库详解
Oct 21 Javascript
关于html+ashx开发中几个问题的解决方法
Jul 18 Javascript
jquery插件如何使用 jQuery操作Cookie插件使用介绍
Dec 15 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 Javascript
Jquery解析json字符串及json数组的方法
May 29 Javascript
浅谈window对象的scrollBy()方法
Jul 15 Javascript
基于jQuey实现鼠标滑过变色(整行变色)
Dec 07 Javascript
使用angularjs创建简单表格
Jan 21 Javascript
vue webuploader 文件上传组件开发
Sep 23 Javascript
解决vue2 在mounted函数无法获取prop中的变量问题
Nov 15 Javascript
js实现简单的日历显示效果函数示例
Nov 25 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后台程序与Javascript的两种交互方式
2009/10/25 PHP
PHP学习之数组值的操作
2011/04/17 PHP
深入探讨PHP中的内存管理问题
2011/08/31 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
php基于GD库画五星红旗的方法
2015/02/24 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
php实现用户注册密码的crypt加密
2017/06/08 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
利用location.hash实现跨域iframe自适应
2010/05/04 Javascript
基于jquery的禁用右键、文本选择功能、复制按键的实现代码
2013/08/27 Javascript
利用Jquery实现可多选的下拉框
2014/02/21 Javascript
js常用系统函数用法实例分析
2015/01/12 Javascript
javascript生成不重复的随机数
2015/07/17 Javascript
jquery之别踩白块游戏的简单实现
2016/07/25 Javascript
几句话带你理解JS中的this、闭包、原型链
2016/09/26 Javascript
基于Vue实现微信小程序的图文编辑器
2018/07/25 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
wxpython学习笔记(推荐查看)
2014/06/09 Python
python中list循环语句用法实例
2014/11/10 Python
Python 26进制计算实现方法
2015/05/28 Python
在python里面运用多继承方法详解
2019/07/01 Python
parser.add_argument中的action使用
2020/04/20 Python
python中有函数重载吗
2020/05/28 Python
Django 构建模板form表单的两种方法
2020/06/14 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
Python环境配置实现pip加速过程解析
2020/11/27 Python
python爬虫爬取图片的简单代码
2021/01/18 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
HTML5学习笔记之html5与传统html区别
2016/01/06 HTML / CSS
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
行风评议整改报告
2014/11/06 职场文书
何玥事迹观后感
2015/06/16 职场文书
MySQL千万级数据表的优化实战记录
2021/08/04 MySQL
PHP获取学生成绩的方法
2021/11/17 PHP
Golang数据类型和相互转换
2022/04/12 Golang
Java 中的 Lambda List 转 Map 的多种方法详解
2022/07/07 Java/Android