我闷今天的目的就是通过这道题初步理解一下状态压缩类动态规划 首先我们先来介绍一下定义,所谓状态压缩类动态规划,顾名思义,这是以集合信息为状态的特殊的动态规划问题。主要有传统集合动态规划和基于连通性状态压缩的动态规划两种。 因为某些动态规划的需求信息量非常的大,并且我们为每一个信息开一维数组这样的做法 ...
分类:
其他好文 时间:
2020-07-17 13:54:46
阅读次数:
60
动态规划LSC——最长公共子序列 设A="a0,a1,…,am",B="b0,b1,…,bn",且Z="z0,z1,…,zk"为它们的最长公共子序列。不难证明有以下性质: 如果am=bn,则zk=am=bn,且"z0,z1,…,z(k-1)"是"a0,a1,…,a(m-1)"和"b0,b1,…,b(... ...
分类:
其他好文 时间:
2020-07-16 21:10:41
阅读次数:
46
今天早上换寝室,耽误了一些时间。还是继续复习动态规划。 单调队列优化dp 第一道,宝物筛选。一道多重背包优化题。如果用二进制优化很好做,但时间复杂度是O(nW*logm)。单调队列优化做法如下: 首先做出普通的多重背包的转移方程:f[j]=max{f[j-w*k]+v*k},w为重量,v为价值。 使 ...
分类:
其他好文 时间:
2020-07-15 01:33:13
阅读次数:
111
面试题 17.13 恢复空格【200709每日一题】 方法:字典树trie + 动态规划 这道题真的是要搞死我了…… 先来搞简单的部分—— 动态规划。 令 \(dp[i]\) 表示句子里前 i 个字符中最少的未识别字符数,此处前 i 个字符对应的是字符串 \(sentence.substring(0 ...
分类:
编程语言 时间:
2020-07-15 01:24:29
阅读次数:
74
551. 学生出勤记录 I 描述: 思路:字符串包含A的个数 和 是否包含“LLL” 552. 学生出勤记录 II 描述: 思路:动态规划。dp[0-n][0-1 A][0-1-2 L]。 状态转移根据题意分情况 添加P时候, 添加A的时候 L的时候。。 553. 最优除法 描述: 思路:题中说全部 ...
分类:
其他好文 时间:
2020-07-14 13:15:33
阅读次数:
42
338. 比特位计数 Difficulty: 中等 给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 **i **,计算其二进制数中的 1 的数目并将它们作为数组返回。 示例 1: 输入: 2 输出: [0,1,1] 示例 2: 输入: 5 输出: [0,1,1,2,1,2] ...
分类:
其他好文 时间:
2020-07-14 00:44:44
阅读次数:
61
递归(Recursion)算法思想递归算法是一种调用自身函数的算法(二叉树的许多性质在定义上就满足递归)。递归的基本性质就是函数调用,在处理问题的时候,递归往往是把一个大规模的问题不断地变小然后进行推导的过程。 举例:(汉诺塔问题)有三个塔 A、B、C,一开始的时候,在塔 A 上放着 n 个盘子,它 ...
分类:
编程语言 时间:
2020-07-14 00:42:37
阅读次数:
70
题目描述: 方法:动态规划 class Solution: def winnerSquareGame(self, n: int) -> bool: dp = [False, True, False] for x in range(3, n+1): dp.append(False) for y in ...
分类:
其他好文 时间:
2020-07-14 00:20:11
阅读次数:
68
问题描述 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3输出: 5解释:给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 3 来源:力扣(LeetCo ...
分类:
其他好文 时间:
2020-07-13 15:19:18
阅读次数:
63
问题描述 给定三个字符串 s1, s2, s3, 验证 s3 是否是由 s1 和 s2 交错组成的。 示例 1: 输入: s1 = "aabcc", s2 = "dbbca", s3 = "aadbbcbcac"输出: true示例 2: 输入: s1 = "aabcc", s2 = "dbbca" ...
分类:
其他好文 时间:
2020-07-13 09:22:58
阅读次数:
108