每日天氣

根據(jù)每日 氣溫 列表,請重新生成一個列表,對應位置的輸入是你需要再等待多久溫度才會升高的天數(shù)。如果之后都不會升高,請輸入 0 來代替。

例如,給定一個列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的輸出應該是 [1, 1, 4, 2, 1, 1, 0, 0]。

class Solution {
public:
    vector<int> dailyTemperatures(vector<int>& T) {
        vector<int> t(T.size(), 0);
        //借助一個棧做輔助,實現(xiàn)了跨索引的比較, 這樣一次遍歷就可以比較所有成員
        stack<int> s;
        for(int i = 0; i < T.size(); i++) {
            while(!s.empty() && T[i] > T[s.top()]) {
                t[s.top()] = i - s.top();
                s.pop();
            }
            s.push(i);
        }
        return t;
    }
};

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容