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

单调栈的应用:

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

单调栈的构成:

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

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

单调栈的作用:

记录遍历过的元素。

单调栈的解题过程:

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

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

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

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

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

代码实现:(739.)

leetcode496.

解题过程:

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

代码实现:

相关推荐
2401_8920709815 小时前
算法与数据结构精讲:最大子段和(暴力 / 优化 / 分治)+ 线段树从入门到实战
c++·算法·线段树·最大子段和
memcpy015 小时前
LeetCode 904. 水果成篮【不定长滑窗+哈希表】1516
算法·leetcode·散列表
老四啊laosi15 小时前
[双指针] 8. 四数之和
算法·leetcode·四数之和
汀、人工智能15 小时前
[特殊字符] 第24课:反转链表
数据结构·算法·链表·数据库架构··反转链表
田梓燊15 小时前
leetcode 41
数据结构·算法·leetcode
_深海凉_15 小时前
LeetCode热题100-三数之和
算法·leetcode·职场和发展
y = xⁿ16 小时前
【LeetCode】双指针合集
算法·leetcode
2601_9495394516 小时前
家用新能源 SUV 核心技术科普:后排娱乐、空间工程与混动可靠性解析
大数据·网络·人工智能·算法·机器学习
生信研究猿16 小时前
一个整数转换为二进制
leetcode
凌波粒16 小时前
LeetCode--18.四数之和(双指针法)
数据结构·算法·leetcode