[栈] leetcode 739 Daily Temperatures

problem:https://leetcode.com/problems/daily-temperatures/

        一道使用单调栈维护(递减序列)的题目,比较简单。

class Solution {
public:
    vector<int> dailyTemperatures(vector<int>& T) 
    {
        stack<int> sta;
        int n = T.size();
        vector<int> res(n, 0);
        for (int i = 0; i < n; i++) 
        {
            while (!sta.empty() && T[i] > T[sta.top()]) 
            {
                res[sta.top()] = i - sta.top();
                sta.pop();
            }
            sta.push(i);
        }
        return res;
    }
};

 

posted @ 2019-07-30 10:09  fish1996  阅读(162)  评论(0编辑  收藏  举报