栈结构-封装

132 阅读1分钟

栈常见的操作:

  • push(element):添加一个新元素到栈顶位置;
  • pop():移除栈顶的元素,同时返回被移除的元素;
  • peek():返回栈顶的元素,不对栈做任何修改(该方法不会移除栈顶的元素,仅仅返回它);
  • isEmpty():如果栈里没有任何元素就返回true,否则返回false;
  • size():返回栈里的元素个数。这个方法和数组的length属性类似;
  • toString():将栈结构的内容以字符串的形式返回。
class Stack {
    constructor() {
        this.items = []
    }
    //push(element):添加一个新元素到栈顶位置。
    push(element) {
        this.items.push(element)
    }
    //pop():移除栈顶元素,同时返回被移除的元素
    pop() {
        return this.items.pop()
    }
    //peek():返回栈顶的元素,不对栈做任何修改(这个方法不会移除栈顶元素,仅仅返回它)。
    peek() {
        return this.items[this.items.length - 1]
    }
    //isEmpty():如果栈里没有任何元素就返回true,否则返回false
    isEmpty(){
        return this.items.length === 0
    }
    //size():返回栈里面的元素个数,这个方法和数组的length属性很类似。
    size(){
        return this.items.length
    }
}