github博客地址

栈(stack)又名堆栈,它是一种运算受限的线性表。遵循后进先出原则,像垃圾桶似的。
功能实现依然按照增删改查来进行,内部数据存储可以借用语言原生支持的数组。

栈类

function Stack(){this.data = [];
}

  

添加数据

数据添加到末尾

push: function (element){this.data.push(element);
}

  

删除数据

从末尾删除

pop: function (){this.data.pop();
}

  

获取数据

返回最后一个添加的

peek: function (){return this.data[this.size() - 1];
}

  

是否为空

isEmpty: function (){return this.data.length == 0;
}

  

清空数据

clear: function (){this.data= [];
}

  

数据长度

size: function (){return this.data.length;
}

  

辅助函数,打印数据

print: function (){console.log(this.data.toString());
}

  

完整代码

 1 function Stack(){
 2     this.data = [];
 3 }
 4 Stack.prototype = {
 5     push: function (element){
 6         this.data.push(element);
 7     },
 8     pop: function (){
 9         this.data.pop();
10     },
11     peek: function (){
12         return this.data[this.data.length - 1];
13     },
14     isEmpty: function (){
15         return this.data.length == 0;
16     },
17     clear: function (){
18         this.data= [];
19     },
20     size: function (){
21         return this.data.length;
22     },
23     print: function (){
24         console.log(this.data.toString());
25     }
26 }

View Code

转载于:https://www.cnblogs.com/donglegend/p/6043330.html

javascript数据结构-栈相关推荐

  1. JavaScript数据结构——栈(Stack)

    概念和结构 栈是一种后进先出(LIFO)的数据结构. 栈的第一个元素所在位置称为栈底,最后一个元素所在位置称为栈顶. 不包含任何元素的栈称为空栈. 栈的操作 栈有六种常用操作,分别为 入栈 push( ...

  2. JavaScript数据结构——图的实现

    在计算机科学中,图是一种网络结构的抽象模型,它是一组由边连接的顶点组成.一个图G = (V, E)由以下元素组成: V:一组顶点 E:一组边,连接V中的顶点 下图表示了一个图的结构: 在介绍如何用Ja ...

  3. 学习JavaScript数据结构与算法(一):栈与队列

    本系列的第一篇文章: 学习JavaScript数据结构与算法(一),栈与队列 第二篇文章:学习JavaScript数据结构与算法(二):链表 第三篇文章:学习JavaScript数据结构与算法(三): ...

  4. JavaScript数据结构与算法(1)(数组、栈、队列、链表)(ES6)

    注意:原教学视频:JavaScript(ES6)数据结构和算法 | JavaScript数据结构与算法 (都是CoderWhy老师的教学) 原作者(笔记)链接:JavaScript 数据结构与算法 | ...

  5. 5分钟教会学妹使用JavaScript栈解决问题(三)【JavaScript数据结构与算法系列】

    本文目录 一.用栈解决问题的领域 二.从十进制到二进制 三.进制转换算法 四.本章小结 五.写在后面 一.用栈解决问题的领域 在上一篇文章中,我们了解并学习了JavaScript使用不同的方法来定义栈 ...

  6. 学习javascript数据结构(三)——集合

    前言 总括: 本文讲解了数据结构中的[集合]概念,并使用javascript实现了集合. 原文博客地址:学习javascript数据结构(三)--集合 知乎专栏&&简书专题:前端进击者 ...

  7. 为什么我要放弃javaScript数据结构与算法(第二章)—— 数组

    第二章 数组 几乎所有的编程语言都原生支持数组类型,因为数组是最简单的内存数据结构.JavaScript里也有数组类型,虽然它的第一个版本并没有支持数组.本章将深入学习数组数据结构和它的能力. 为什么 ...

  8. JavaScript数据结构和算法简述——数组

    为什么先讲数组 数据结构可以简单的被分为线性结构和非线性结构. 线性结构大致包括: 数组(连续存储): 链表(离散存储): 栈(线性结构常见应用,由链表或数组增删和改进功能实现): 队列(线性结构常见 ...

  9. JavaScript数据结构和算法简述——前言

    为什么要使用数据结构和算法(程序=数据结构+算法)         数据结构是对在计算机内存中(有时在磁盘中)的数据的一种安排.包括数组.链表.栈.二叉树.哈希表等.        算法是对这些结构中 ...

最新文章

  1. 《中国式方案秘籍(上部)》
  2. 【ABAP】Field Symbol使用总结
  3. 你......真的了解我吗?
  4. 谷歌退出中国几成定局 谈判已谈崩
  5. 什么?他居然想在DLL中放毒!
  6. 153. 寻找旋转排序数组中的最小值 golang
  7. poj2236 并查集
  8. 射频能量用于治疗和美容
  9. MySQL执行多表联查时,报错ln aggregated query without GROUP BY
  10. mysql删除某天前的数据
  11. 教务系统漏洞再生南工大FaceMash
  12. 世界上最复杂的函数_世界上最伟大的10个公式,其中一个人尽皆知
  13. u盘安装centos8黑屏_u盘centos7 安装 黑屏苹果电脑怎么安装win7系统还原
  14. iOS8定位问题解决方案
  15. Nginx反向代理服务器高速缓存数据结构的部分实现
  16. Java 中的 getResource 方法
  17. sql增加数据的几种方法
  18. 网络爬虫:商品比价定向爬虫
  19. Hibernate数据查询教程
  20. 最全Python函数总结和应用(超详细+建议收藏),基本所有内置函数,心得都在这了,踩的坑也在里面了,最后还有函数的魂

热门文章

  1. poj 1330 Nearest Common Ancestors LCA/DFS
  2. 九章算法强化班 - 课程大纲
  3. 深入理解Java引用类型
  4. 一步一步学Silverlight 2系列(25):综合实例之Live Search
  5. pycharm写python字典_pythonpycharm安装基础语法
  6. C++ 类成员引用变量的使用
  7. 局域网mysql数据库访问
  8. 互补输出级采用共集形式是为了使_天津大学胡文平《先进材料》:溶液法制备厘米级高度取向有机晶体阵列,可用于高性能有机场效应晶体管...
  9. 推荐几个最近Star过的Github仓库
  10. mysql注入提取邮件_【sql注入教程】mysql注入直接getshell