摘要: 学习资料:https://programmercarl.com/0739.每日温度.html#算法公开课 单调栈: 用数组模拟单调栈,今天的题中,栈中元素都保存的索引值 基本思路:将新元素和栈顶索引对应值比较,如果要保持单调递增,则需要新元素不大于栈顶索引对应值;若满足就加入新元素索引到栈中;若不满 阅读全文
posted @ 2024-11-15 21:14 Tristan241001 阅读(20) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/0647.回文子串.html#算法公开课 动态规划最后一部分:回文字符串 子串是从原字符串中连续截取的;子序列可以是从原字符串中不连续提取出元素构成的 学习记录: 647.回文子串(难构造dp数组,dp数组是从原字符串截取[i,j]范围 阅读全文
posted @ 2024-11-14 21:20 Tristan241001 阅读(19) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/0115.不同的子序列.html#算法公开课 动态规划系列之编辑距离问题 学习记录: 115.不同的子序列(当遇到相同字母时,可以选择也可以不选;刚开始没看懂;dp[i][j]是对应i-1结尾和j-1结尾,这样的目的是方便第一行和第一列 阅读全文
posted @ 2024-11-13 22:23 Tristan241001 阅读(26) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/1143.最长公共子序列.html#算法公开课 动态规划系列之子序列 其实有些用贪心也可解 学习记录: 1143.最长公共子序列(dp[i][j]是代表的i-1和j-1为止的两个片段的最长公共子序列,原因是为了更好的初始化;比如当dp[ 阅读全文
posted @ 2024-11-12 20:15 Tristan241001 阅读(18) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/0300.最长上升子序列.html#算法公开课 动态规划系列之子序列 学习记录 300.最长递增子序列(长度最少为1;dp[i]代表到i为止的最长子序列的长度;i的值根据i之前比如j的值来判断;每个地方都有可能获得最长长度) 点击查看代 阅读全文
posted @ 2024-11-11 16:23 Tristan241001 阅读(27) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/0188.买卖股票的最佳时机IV.html#算法公开课 动态规划之股票系列(2) 主要是要分持股状态来讨论各种情况,并由前一天的情况来讨论今天的金额 学习记录: 188.买卖股票的最佳时机IV(相当于2k+1维度) 点击查看代码 cla 阅读全文
posted @ 2024-11-09 20:39 Tristan241001 阅读(19) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/0198.打家劫舍.html#算法公开课 动态规划的打家劫舍系列和股票买卖系列(股票还有贪心算法可解) 学习记录: 198.打家劫舍(一维dp数组,前n间房子都可偷的情况下的最高金额,每间房子偷数都是由前一间和前两间决定) 点击查看代码 阅读全文
posted @ 2024-11-08 19:33 Tristan241001 阅读(10) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/背包问题理论基础完全背包.html#算法公开课 相比于01背包,完全背包中每个物品都可以无限次的放入 组合:先遍历物品,再逆序遍历背包 排列:先逆序遍历背包,再遍历物品 学习记录 卡码网52.携带研究资料(dp[i]代表当重量为i时的最 阅读全文
posted @ 2024-11-07 20:49 Tristan241001 阅读(34) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/背包理论基础01背包-1.html 动态规划 01背包问题 学习记录: 卡码网46题.01背包 点击查看代码 # # 二维背包解法 # n, bagweight = map(int, input().split()) # weight= 阅读全文
posted @ 2024-11-04 22:48 Tristan241001 阅读(16) 评论(0) 推荐(0)
摘要: 学习资料:https://programmercarl.com/动态规划理论基础.html#算法公开课 动态规划PART1 动规五部曲: 1,确定dp数组,i和dp[i]的含义 2,递推公式 3,dp数组初始化 4,确定遍历顺序 5,打印数组(用于debug) 常见题型:基本题目、背包问题、打家劫舍 阅读全文
posted @ 2024-11-03 21:19 Tristan241001 阅读(31) 评论(0) 推荐(0)