摘要: 42.接雨水 题目链接 文章讲解 视频讲解 思路找到当前柱子左边第一个比它高的和右边第一个比它高的柱子进行计算,右边第一个比它搞得柱子可以循环遍历得到,左边第一个比它高的柱子就是栈中下一个元素 class Solution { public: int trap(vector<int>& height 阅读全文
posted @ 2024-07-05 23:03 深蓝von 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 739.每日温度 题目链接 文章讲解 视频讲解 单调栈适合的场景:求当前元素左面或右面第一个比它大或小的元素 单调栈里存什么元素 只要存下标就可以了,比较元素时可以通过下标取元素 单调栈是单调增还是单调减(从栈顶到栈底) 使用单调增的单调栈 解题步骤: 遍历数组,当栈空时直接入栈 如果栈不空比较当前 阅读全文
posted @ 2024-07-05 22:12 深蓝von 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 647.回文子串 题目链接 文章讲解 视频讲解 动态规划法 动规五部曲: dp[i][j]: 表示区间范围[i, j]的字串是否是回文串 如果dp[i]表示下表为i的字符串有dp[i]个回文串的话,写不出递推公式,因为dp[i]和dp[i-1]没有什么关系,但如果已经知道i-j位置的字符串已经是回文 阅读全文
posted @ 2024-07-05 17:39 深蓝von 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 115.不同的子序列 题目链接 文章讲解 视频讲解 动规五部曲: dp[i][j]: 以i-1为结尾的s子序列中出现以j-1为结尾的t的个数为dp[i][j], 递推公式: s[i-1]与t[j-1]相等 需要是s[i-1]与t[j-1]匹配,那么个数为dp[i-1][j-1]即不需要考虑当前s子串 阅读全文
posted @ 2024-07-05 16:15 深蓝von 阅读(1) 评论(0) 推荐(0) 编辑