随笔分类 - 栈
摘要:problem:https://leetcode.com/problems/next-greater-node-in-linked-list/ 维护递减的单调栈。这道题对象是链表,不像数组可以快速通过下标索引,所以比较方便的做法是在栈中同时记录数字和对应的下标,并且默认填0,如果找到了比它大的第一个
阅读全文
摘要:problem:https://leetcode.com/problems/largest-rectangle-in-histogram 经典单调栈题目。维护递增的单调栈,当发现当前数字比栈顶要小的时候,此时栈顶元素是最大的(大于栈里的下一个元素,也大于当前元素),所以可以计算以当前栈顶元素为高的矩
阅读全文
摘要:problem:https://leetcode.com/problems/remove-k-digits 单调栈。维护一个递增的栈,每pop一次意味着移除了一个元素,k--。减为0时不再移除。前导0处理起来很麻烦,很容易WA。
阅读全文
摘要:problem:https://leetcode.com/problems/mini-parser/ 一道普通的翻译题?代码写的很不优雅:
阅读全文
摘要:problem:https://leetcode.com/problems/trapping-rain-water/ 此题需要维护首尾两个指针,每次移动较小高度处的指针。 同时,维护左右的最大高度,作为当前可装水的高度。每次更新较小高度处的装水量,因为当前位置高度比另一侧更小,起码可以保证水不会从另
阅读全文
摘要:problem:https://leetcode.com/problems/flatten-nested-list-iterator/ 这道题要手动维护栈,对于弱鸡的我写起来真痛苦Orz
阅读全文
摘要:problem:https://leetcode.com/problems/verify-preorder-serialization-of-a-binary-tree/ 这道题需要记录一个count值,表示当前树还有多少个地方可以插入新的节点(包括插入数字和插入Null)。 如果插入的是数字节点,
阅读全文
摘要:problem:https://leetcode.com/problems/next-greater-element-ii/ 一道比较简单的单调队列题目。不过由于题目要求是循环的,需要两个pass,第二个pass处理循环生效的next greater,同时需要把下标已经超出范围的队首数据及时pop出
阅读全文
摘要:problem:https://leetcode.com/problems/daily-temperatures/ 一道使用单调栈维护(递减序列)的题目,比较简单。
阅读全文
摘要:problem:https://leetcode.com/problems/132-pattern/ 昨晚睡觉前想了一下,今早写好后交了一下居然过了。 我的想法是维护用一个数据结构来维护到目前为止出现的“13”pattern,为了减少计算量,把一些可能的“13”pattern合并,比如对于一个递增的
阅读全文

浙公网安备 33010602011771号