Js算法中栈的操作

134 阅读1分钟

1,栈的结构

2,栈的常见操作

  • push(element):添加一个新的元素到栈的位置
  • pop():移除栈顶的元素,同时返回被移除的元素
  • peek():返回栈顶的元素,不对栈进行任何的修改
  • isEmpty():栈为空时返回true,否则返回false
  • size():返回栈里的元素个数,这个方法和数组的length属性相似
  • toString():将栈的结构内容以字符串返回

3,栈的实现

class Stack{
    constructor(){
        this.items=[]
    }
    //入栈
    push(element){
        this.items.push(element)
    }
    //出栈
    pop(){
        return this.items.pop()
    }
    //末尾
    get peek(){
        return this.items[this.items.length-1]
    }
    //是否为空栈
    get isEmpty(){
        return !this.items.length
    }
    //长度
    get size(){
        return this.items.length
    }
    //清空栈
    clear(){
        this.items=[]
    }
    //打印栈数据
    print(){
        console.log(this.items.toString())
    }
}