棧的最小值

今天刷題看到了一個求棧最小值的方法,覺得很不錯啊~~


class Solution {
public:
    
    
     stack< pair<int,int> >s;
    void push(int value) {
      
        if(s.empty())s.push(pair<int,int>(value,value));
        else if(value<min())s.push(pair<int,int>(value,value));
            else s.push(pair<int,int>(value,min()));
        
    }
    void pop() {
        s.pop();
    }
    int top() {
        
         return s.top().first;
        
    }
    int min() {
        
       return s.top().second;
        
    }
};//非原創,轉自牛客網



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章