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系列(14) 作用域链介绍(Scope Chain)
Apr 12 Javascript
文字不间断滚动(上下左右)实例代码
Apr 21 Javascript
js改变img标签的src属性在IE下没反应的解决方法
Jul 23 Javascript
jquery、js调用iframe父窗口与子窗口元素的方法整理
Jul 31 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
Jul 07 Javascript
如何利用JQuery实现从底部回到顶部的功能
Dec 27 Javascript
jQuery实现的简单图片轮播效果完整示例
Feb 08 jQuery
Vue 实现树形视图数据功能
May 07 Javascript
微信小程序中使用ECharts 异步加载数据实现图表功能
Jul 13 Javascript
Net微信网页开发 使用微信JS-SDK获取当前地理位置过程详解
Aug 26 Javascript
解析vue、angular深度作用选择器
Sep 11 Javascript
解决vue中provide inject的响应式监听
Apr 19 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实现mysql数据库操作类分享
2014/02/14 PHP
PHP判断数据库中的记录是否存在的方法
2014/11/14 PHP
Codeigniter检测表单post数据的方法
2015/03/21 PHP
PHP实现文件上传功能实例代码
2017/05/18 PHP
在laravel框架中实现封装公共方法全局调用
2019/10/14 PHP
JavaScript 获取当前时间戳的代码
2010/08/05 Javascript
myFocus slide3D v1.1.0 使用方法与下载
2011/01/12 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
详解AngularJS中的http拦截
2016/02/09 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
微信小程序 在线支付功能的实现
2017/03/14 Javascript
JQuery 封装 Ajax 常用方法(推荐)
2017/05/21 jQuery
原生JS实现$.param() 函数的方法
2018/08/10 Javascript
浅谈redux以及react-redux简单实现
2018/08/28 Javascript
在vue中多次调用同一个定义全局变量的实例
2018/09/25 Javascript
Vue中computed及watch区别实例解析
2020/08/01 Javascript
Element-UI 使用el-row 分栏布局的教程
2020/10/26 Javascript
[01:59][TI9趣味视频] 全明星赛奖励
2019/08/23 DOTA
使用Python进行二进制文件读写的简单方法(推荐)
2016/09/12 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
python 自动轨迹绘制的实例代码
2019/07/05 Python
python sklearn常用分类算法模型的调用
2019/10/16 Python
python3将变量输入的简单实例
2020/08/19 Python
HTML5+CSS3实现机器猫
2016/10/17 HTML / CSS
Vans(范斯)德国官网:美国南加州的原创极限运动潮牌
2017/05/02 全球购物
6号汽车旅馆预订:Motel 6
2018/02/11 全球购物
八年级数学教学反思
2014/01/31 职场文书
保安岗位职责
2014/02/21 职场文书
法定代表人授权委托书范文
2014/09/22 职场文书
师范生免费教育协议书范本
2014/10/09 职场文书
CSS实现五种常用的2D转换
2021/12/06 HTML / CSS
Python实现抖音热搜定时爬取功能
2022/03/16 Python
微软发布Windows 11今年最大更新22H2(附 ISO 镜像官方下载)
2022/09/23 数码科技