设计一个有getMin功能的栈

class Stuck extends Array {
      constructor(name) {
        super(name)
        this.stuckData = []
        this.stuckMin = []
      }
      push(item) {
        const stuckMin = this.stuckMin
        const stuckData = this.stuckData
        stuckData.push(item)
        if(stuckMin.length === 0) { stuckMin.push(item) }
        else if(item > stuckMin.at(-1)) { stuckMin.push(stuckMin.at(-1)) }
        else { stuckMin.push(item) }
      }
      pop(item) {
        const stuckMin = this.stuckMin
        const stuckData = this.stuckData
        stuckMin.pop()
        return stuckData.pop()
      }
      getMin(){
        return this.stuckMin.at(-1)
      }
    }

 

posted @ 2022-07-23 23:59  TheWoods  阅读(23)  评论(0)    收藏  举报