leetcode:739.每日温度/496.下一个更大元素

单调栈的应用:

求解当前元素右边比该元素大的第一个元素(左右、大小都可以)。

单调栈的构成:

单调栈里存储数组的下标;

单调栈里的元素递增,求解当前元素右边比该元素大的第一个元素;元素递减,求解当前元素左边比该元素大的第一个元素。

单调栈的作用:

记录遍历过的元素。

单调栈的解题过程:

将当前遍历到的元素与栈顶元素进行比较,有以下三种情况:

1.当前遍历到的元素>栈顶元素

已找到目标元素,弹出栈顶元素,(直到当前遍历到的元素<=栈顶元素)将当前遍历到的元素加入单调栈。【这是一个循环的过程】

2.当前遍历到的元素<=栈顶元素

直接将当前遍历到的元素加入单调栈。

代码实现:(739.)

leetcode496.

解题过程:

相比于纯粹的单调栈问题,这道题目还增加了两个数组之间的映射这一环节。

代码实现:

相关推荐
阿豪学编程7 小时前
LeetCode724.:寻找数组的中心下标
算法·leetcode
墨韵流芳8 小时前
CCF-CSP第41次认证第三题——进程通信
c++·人工智能·算法·机器学习·csp·ccf
csdn_aspnet8 小时前
C# 求n边凸多边形的对角线数量(Find number of diagonals in n sided convex polygon)
开发语言·算法·c#
禹中一只鱼9 小时前
【力扣热题100学习笔记】 - 哈希
java·学习·leetcode·哈希算法
凌波粒9 小时前
LeetCode--349.两个数组的交集(哈希表)
java·算法·leetcode·散列表
paeamecium10 小时前
【PAT甲级真题】- Student List for Course (25)
数据结构·c++·算法·list·pat考试
Book思议-10 小时前
【数据结构】栈与队列全方位对比 + C 语言完整实现
c语言·数据结构·算法··队列
SteveSenna10 小时前
项目:Trossen Arm MuJoCo
人工智能·学习·算法
NAGNIP10 小时前
一文搞懂CNN经典架构-DenseNet!
算法·面试
道法自然|~10 小时前
BugCTF黄道十二宫
算法·密码学