数据结构——栈

240 阅读1分钟

栈数据结构

栈是一种遵从后进先出的(LIFO)原则的有序集合。新添加的或者删除的元素保存在栈的同一端,称作栈顶,另一端称之为栈底。新元素都靠近栈顶,旧元素都接近栈底。

创建栈

function Stack() {
  // 使用数组保存栈里面的元素
  this.item = [];
}

栈这种数据结构应该具有以下方法:

  • push(element(s)): 添加一个或者几个新元素到栈顶
  • pop( ): 移除栈顶的元素,同时返回被移除的元素
  • peek( ): 返回栈顶的元素,不对栈做任何的修改
  • isEmpty( ): 如果栈里面没有任何的元素就返回 true
  • clear( ): 移除栈里面的所有的元素
  • size( ): 返回栈里面的元素的个数
// 向栈中添加元素
Stack.prototype.push = function(element) {
  this.items.push(element);
};

// 从栈中移除元素
Stack.prototype.pop = function() {
  this.items.pop();
};

// 查看栈顶元素
Stack.prototype.peek = function() {
  return this.items[items.length - 1];
};

// 查看栈的长度
Stack.prototype.size = function() {
  return this.items.length
}

// 检查栈是否为空
Stack.prototype.isEmpty = function() {
  return this.items.length === 0
}

// 清空栈内元素
Stack.prototype.clear = function() {
  this.items = []
}