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

单调栈的应用:

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

单调栈的构成:

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

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

单调栈的作用:

记录遍历过的元素。

单调栈的解题过程:

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

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

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

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

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

代码实现:(739.)

leetcode496.

解题过程:

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

代码实现:

相关推荐
钓鱼的肝4 分钟前
csp-j-s总结(1)
c++·笔记·算法·青少年编程
流云枫4 分钟前
001-Transformer架构与Self-Attention机制深度解析
算法
生信大杂烩25 分钟前
Xenium H&E空间原位可视化——细胞轮廓、基因表达与转录本可视化
python·算法·数据分析
linx29537 分钟前
第七章 · 标准库容器、算法与 ranges
c语言·开发语言·数据结构·c++·算法
钓鱼的肝41 分钟前
csp-j-s总结(4)
c++·经验分享·笔记·算法
橘子汽水1681 小时前
Leetcode 763,45 划分字母区间 跳跃游戏II
数据结构·算法·leetcode
天天喝旺仔2 小时前
Git 内部原理深度解析:从 blob/tree/commit 对象到 packfile 与垃圾回收
数据结构·数据库·git·算法·哈希
AIGCmagic社区2 小时前
KITTI AbsRel从6.5压到5.4,Marigold V2用一张32GB卡把编辑DiT收成单步深度估计
人工智能·算法·aigc·ai多模态
青少儿编程课堂2 小时前
多源最短路与最小环(Floyd 算法图论解析)
c++·python·算法·bfs·信息学竞赛
6Hzlia2 小时前
【Classic 150 刷题计划】 LeetCode 228. 汇总区间 | C++ 锚点游标与断点检测法
c++·算法·leetcode