栈是一种遵循后进先出(LIFO last in first out)原则的有序集合,新添加或待删除的元素都保存在栈的末尾,成为栈顶,另一端叫栈底。
实现一个栈的数据结构:
function Stack() {
var items = [];
this.push = function(element) {
items.push(element);
}
this.pop = function() {
items.pop();
}
this.peek = function() {
return items[items.length-1]
}
this.size = function() {
return items.length;
}
this.isEmpty = function() {
return items.length > 0 ? false: true
}
this.clear = function() {
items = [];
}
}
const s = new Stack();
s.push("a");
s.push(2);
console.log(s.peek()); // 2
console.log(s.size()); // 2
console.log(s.isEmpty()); // false
s.pop();
console.log(s.peek()); // a
console.log(s.size()); // 1
s.clear();
console.log(s.size()); // 0
console.log(s.isEmpty()); // true
网友评论