栈
清水雅然君
这个作者很懒,什么都没留下…
展开
-
每日题解:LeetCode 901. 股票价格跨度
题目地址个人博客地址题目描述编写一个 StockSpanner 类,它收集某些股票的每日报价,并返回该股票当日价格的跨度。今天股票价格的跨度被定义为股票价格小于或等于今天价格的最大连续日数(从今天开始往回数,包括今天)。例如,如果未来7天股票的价格是 [100, 80, 60, 70, 60, 75, 85],那么股票跨度将是 [1, 1, 1, 2, 1, 4, 6]。示例:输入:["StockSpanner","next","next","next","next","next","ne原创 2020-08-07 22:28:21 · 353 阅读 · 0 评论 -
每日题解:LeetCode 1190. 反转每对括号间的子串
题目地址个人博客地址题目描述解法解题思路原创 2020-08-06 20:43:00 · 580 阅读 · 0 评论 -
每日题解:LeetCode 1019. 链表中的下一个更大节点
题目地址个人博客地址题目描述给出一个以头节点 head 作为第一个节点的链表。链表中的节点分别编号为:node_1, node_2, node_3, … 。每个节点都可能有下一个更大值(next larger value):对于 node_i,如果其 next_larger(node_i) 是 node_j.val,那么就有 j > i 且 node_j.val > node_i.val,而 j 是可能的选项中最小的那个。如果不存在这样的 j,那么下一个更大值为 0 。返回整数答案数原创 2020-07-30 22:46:55 · 611 阅读 · 0 评论 -
每日题解:LeetCode 144. 二叉树的前序遍历(中、后序遍历,以及递归、迭代写法)
题目地址个人博客地址题目描述给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3]12/3输出: [1,2,3]进阶: 递归算法很简单,你可以通过迭代算法完成吗?解法cpp迭代class Solution { public List<Integer> preorderTraversal(TreeNode root) { List<Integer> res = new ArrayList<Integer>原创 2020-07-27 22:33:07 · 195 阅读 · 0 评论 -
每日题解:LeetCode 32. 最长有效括号
题目地址个人博客地址题目描述给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。示例 1:输入: "(()"输出: 2解释: 最长有效括号子串为 "()"示例 2:输入: ")()())"输出: 4解释: 最长有效括号子串为 "()()"解法java栈public class Solution { public int longestValidParentheses(String s) { int ans = 0,原创 2020-07-05 00:34:17 · 146 阅读 · 0 评论 -
每日题解:LeetCode 84. 柱状图中最大的矩形
题目地址个人博客地址题目描述给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。解法JAVA public int largestRectangleArea(int[] heights) { int len = heights.len原创 2020-05-31 00:23:51 · 214 阅读 · 0 评论 -
每日题解:LeetCode 394. 字符串解码
题目地址个人博客地址题目描述给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。示例:s = "3[a]2[bc]", 返回 "aaabcbc".原创 2020-05-28 18:44:31 · 546 阅读 · 0 评论