栈
发表于 2017-12-15 09:07:26 | 分类于 算法 |
栈的定义
栈是一种遵从后进先出原则的有序集合。新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另一端叫做栈底。在栈里,新元素都靠近栈顶,旧元素都靠近栈底。
栈的方法
push(element):添加一个新元素到栈顶。
pop(element):移除栈顶的元素,同时返回被移除的元素。
peek():返回栈顶的元素,不对栈做任何修改(这个方法不会移除栈顶的元素,仅仅返回栈顶的元素)。
isEmpey():如果栈里没有任何元素则返回 true,否则返回 false。
clear():移除栈里的所有元素。
size():返回栈里的元素个数。
栈的创建
创建一个类来表示栈。
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.toString() );
};
}