六十五、下一个更大的数系列,单调栈解决方法

举报
毛利 发表于 2021/07/15 01:58:24 2021/07/15
【摘要】 @Author:Runsen 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化。 ---- Runsen 据说,放张小姐姐觉得照片可以提高阅读量,图是来源学校的2020新生。 算法,一门既不容易入门,也不容易精通的学问。 最近看了 labuladong的文章:单调栈解题模板秒杀三道算法题。 根据脑海大纲的思路,发现这...

@Author:Runsen

编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化。 ---- Runsen

据说,放张小姐姐觉得照片可以提高阅读量,图是来源学校的2020新生。

算法,一门既不容易入门,也不容易精通的学问。

最近看了 labuladong的文章:单调栈解题模板秒杀三道算法题

根据脑海大纲的思路,发现这是一个非常重要的题型,于是我赶紧花费点时间刷了下。

单调栈

单调栈的实质是有单调性的栈,包括单调递增栈和单调递减栈。通过栈的入栈和出栈维护一个动态的滑动窗口,然后栈顶元素是该窗口的最大值或最小值,通过一次遍历,就可以计算出所有元素的下一个较大值或较小值。

如下图,分别插入6,10,3,7,4,12的时候,单调递增栈和单调递减栈的情况:

下一个更大元素

给一个int组成的array,

文章来源: maoli.blog.csdn.net,作者:刘润森!,版权归原作者所有,如需转载,请联系作者。

原文链接:maoli.blog.csdn.net/article/details/109179139

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。