LeetCode
网吧猪
cocos, Android, Unity, 服务端
展开
-
单调队列之生成窗口最大值数组 [LeetCode239]
求滑动窗口的最大值数组Given nums = [1,3,-1,-3,5,3,6,7], and k = 3.Therefore, return the max sliding window as [3,3,5,5,6,7].1、对每个可能出现的窗口遍历一次找到最大值,其时间复杂度为 O(kn)O(kn)O(kn)2、观察遍历窗口的过程,会出现一个值是好多窗口的最大值的情况3、可以...原创 2018-04-05 23:25:16 · 577 阅读 · 0 评论 -
单调栈之最大子矩阵的大小 [LeetCode84]
1、使用暴力算法枚举所有的端点计算其最小值,复杂度为 O(n2)O(n2)O(n^2)2、观察特点,很多区间的左边和右边其实还可以拓展,产生更大的面积3、拓展的边界就是第一个小于这个原始区间中最小的那个高度4、所谓单调栈,就是可以快速找到之前的,第一个比当前值小的那个位子5、先确定右边的极限,再找小于右边极限的第一个位子,就是最长的底,可以使用单调栈如果下一个矩形的高度比上一个...原创 2018-04-06 01:16:16 · 943 阅读 · 0 评论