本文共 1229 字,大约阅读时间需要 4 分钟。
栈是一种遵从后进先出(LIFO)原则的有序集合。
在栈里,新元素都靠近栈顶,旧元素都接近栈低。比如叠书本:
function Stack() {//各种属性和方法的声明}
//push() 方法将一个或多个元素添加到数组的末尾(栈顶),并返回数组的新长度this.push = function(element) { items.push(element);};
//pop()方法移除栈顶的元素,同时返回被移除的元素。this.pop = function() { return items.pop();};
this.peek = function(){ return items[items.length-1];}
this.isEmpty = function() { return items.length === 0;}
this.size= function() { return items.length;}
this.clear = function() { items = [];}
这样我们就完成了一个栈的创建。全部代码:
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 }; this.size = function() { return items.length; }; this.clear = function() { items = []; }; this.print = function() { console.log(items); };}var stack = new Stack();console.log(stack.isEmpty());stack.push(1);stack.push(2);stack.print(); //"[1,2]"
参考学习:
学习javascript数据结构与算法
转载地址:http://avwza.baihongyu.com/