day 48 第十章 单调栈part01 739. 每日温度 49503.下一个更大元素II 6.下一个更大元素 I

任务日期:7.23

题目一链接:739. 每日温度 - 力扣(LeetCode)

思路:通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了。
思路:
1.用一个栈来记录我们遍历过的元素,需要注意的是我们当前记录的是元素的下标而不是元素本身
2.注意以下讲解中,顺序的描述为 从栈头到栈底的顺序。只有单调栈递增(从栈口到栈底顺序),就是求右边第一个比自己大的,单调栈递减的话,就是求右边第一个比自己小的。
3.过程:首先定义一个单调栈,本题是递增栈,现将tem数组的第一个数的下标0压入栈中,然后便利后面的tem数组的下标,进行相应操作。
4.公式:result[st.top()] = i - st.top()通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了。
思路:
1.用一个栈来记录我们遍历过的元素,需要注意的是我们当前记录的是元素的下标而不是元素本身
2.注意以下讲解中,顺序的描述为 从栈头到栈底的顺序。只有单调栈递增(从栈口到栈底顺序),就是求右边第一个比自己大的,单调栈递减的话,就是求右边第一个比自己小的。
3.过程:首先定义一个单调栈,本题是递增栈,现将tem数组的第一个数的下标0压入栈中,然后便利后面的tem数组的下标,进行相应操作。
4.公式:result[st.top()] = i - st.top()

代码:

class Solution {
public:
    vector<int> dailyTemperatures(vector<int>& t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值