2023每日刷题(四十二)
Leetcode—739.每日温度
单调栈实现思想
从右到左实现代码
class Solution {
public:vector<int> dailyTemperatures(vector<int>& temperatures) {int n = temperatures.size();stack<int> st;vector<int> ans(n, 0);for(int i = n - 1; i >= 0; i--) {int t = temperatures[i];while(!st.empty() && t >= temperatures[st.top()]) {st.pop();}if(!st.empty()) {ans[i] = st.top() - i;}st.push(i);}return ans;}
};
运行结果
从左到右实现代码
class Solution {
public:vector<int> dailyTemperatures(vector<int>& temperatures) {int n = temperatures.size();stack<int> st;vector<int> ans(n, 0);for(int i = 0; i < n; i++) {int t = temperatures[i];while(!st.empty() && t > temperatures[st.top()]) {int j = st.top();st.pop();ans[j] = i - j;}st.push(i);}return ans;}
};
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!