2018-06-24 00:58:47来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

栈是一种遵从 后进先出(LIFO)原则的有序集合。(例子:一摞书或是一叠盘子)

新添加的或待删除的元素都保存在栈的末尾,称为栈顶,另一端就叫栈底。在栈里,新元素都靠近栈顶,旧元素都接近栈底。

一、栈的创建

function Stack() {
       var items = [];
       this.push = function(element){
              items.push(element);               // 向栈顶,也就是栈的末尾添加元素
       };


       this.pop = function(){
             return items.pop();                     // 向栈顶,也就是栈的末尾移除元素
       };


       this.peek = function(){
             return items[items.length-1];         // 获取栈顶的元素
       };


      this.isEmpty = function(){
            return items.length == 0;                // 判断内部数组的长度是否为0
      };

 

      this.size = function(){
            return items.length;                  // 返回栈的长度
      };


      this.clear = function(){
            items = [];                                     //  清空栈
      };


       this.print = function(){
             console.log(items.toString());        //  把栈里的元素都输出到控制台
       };
}

 

二、使用栈

var stack = new Stack();

console.log(stack.isEmpty());          //输出为true

stack.push(5);

stack.push(8);

console.log(stack.peek());               //输出8

console.log(stack.size());                 //输出3

console.log(stack.isEmpty());          //输出false

stack.pop();

console.log(stack.size());                 //输出1

 

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:模块化开发RequireJS之shim配置

下一篇:js分享功能