摘要: 题目链接 735. 行星碰撞 思路 当分支情况太多的时候,使用 bool 变量来判断是否应该压入栈 代码 class Solution{ public int[] asteroidCollision(int[] asteroids){ Stack<Integer> stack = new Stack 阅读全文
posted @ 2023-01-05 16:23 Frodo1124 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 题目链接 1249. 移除无效的括号 思路 定义数组 valid 来记录每个字符的合法性,定义栈 stack 来存储每个左括号的下标。遍历数组。 碰到字母直接 valid[i] = true。 碰到左括号则将索引压栈,valid[i] = true。 碰到右括号进行判断 如果栈不为空,则弹出栈顶元素 阅读全文
posted @ 2023-01-05 15:45 Frodo1124 阅读(42) 评论(1) 推荐(0) 编辑
摘要: 题目链接 1209. 删除字符串中的所有相邻重复项 II 思路 用栈存储 Pair<Character, Integer> ,整数表示该字符连续出现的次数。遍历字符串 s 将其中的字符 c 依次压入栈顶并判断: c 和栈顶元素相同,则其整数部分=栈顶整数部分+1,此时如果 c 的整数部分为 k 则进 阅读全文
posted @ 2023-01-05 10:33 Frodo1124 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 题目链接 1472. 设计浏览器历史记录 思路 用栈 history 模拟网页的前进后退操作,用栈 temp 来暂时存储后退所退出的网页。 代码 class BrowserHistory{ Stack<String> history; Stack<String> temp; public Brows 阅读全文
posted @ 2023-01-05 10:24 Frodo1124 阅读(55) 评论(0) 推荐(0) 编辑