随笔分类 -  数据结构与算法 / DP

【动态规划】【力扣357次周赛】6953. 判断是否能拆分数组
摘要:#### 【力扣357次周赛】6953. 判断是否能拆分数组 给你一个长度为 `n` 的数组 `nums` 和一个整数 `m` 。请你判断能否执行一系列操作,将数组拆分成 `n` 个 **非空** 数组。 在每一步操作中,你可以选择一个 **长度至少为 2** 的现有数组(之前步骤的结果) 并将其拆
21
0
0
【DP】01背包与完全背包总结及空间优化
摘要:#### 01背包问题 ​ `题目描述`:有n件物品,每件物品的重量为w[i],价值为c[i]。现在有一个容量为V的背包,问怎么选取物品放入背包,能使得背包内的总价值最大。其中每件物品只能放入一次。 ​ `样例`: ``` n = 5, V =8 w[i] = 3, 5, 1, 2, 2 c[i]
40
0
0
【动态规划】 392. 判断子序列
摘要:8 392. 判断子序列 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。 进阶: 如果有大量输入的 S,称作 S1, S
38
0
0
【DP滚动数组空间优化】NO.1143. 最长公共子序列 NO.718. 最长重复子数组 NO.1035. 不相交的线
摘要:5 1143. 最长公共子序列 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符
42
0
0
【动态规划】NO 123. 买卖股票的最佳时机 III
摘要:【动态规划】123. 买卖股票的最佳时机 III 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入:prices = [3
29
0
0
【动态规划】No 309. 最佳买卖股票时机含冷冻期
摘要:【动态规划】309. 最佳买卖股票时机含冷冻期 给定一个整数数组prices,其中第 prices[i] 表示第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。
57
0
0
【dp的二分优化】NO300 最长递增子序列
摘要:【dp的二分优化】300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1: 输入:nums
31
0
0
【完全背包的排列问题】NO377. 组合总和 Ⅳ
摘要:[完全背包排列问题] 377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保证答案符合 32 位整数范围。 示例 1: 输入:nums = [1,2,3], target
25
0
0
【树形DP入门题】NO337 打家劫舍III
摘要:【树形DP入门题】337. 打家劫舍 III 小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为 root 。 除了 root 之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果 两个直接相连的房子在同一天
18
0
0
   
点击右上角即可分享
微信分享提示
深色
回顶
收起