mirror of
https://github.com/krahets/hello-algo.git
synced 2026-04-13 18:00:18 +08:00
build
This commit is contained in:
@@ -54,7 +54,7 @@ $$
|
||||
|
||||
根据以上分析,我们接下来按顺序实现暴力搜索、记忆化搜索、动态规划解法。
|
||||
|
||||
### 方法一:暴力搜索
|
||||
### 1. 方法一:暴力搜索
|
||||
|
||||
搜索代码包含以下要素:
|
||||
|
||||
@@ -275,7 +275,7 @@ $$
|
||||
|
||||
<p align="center"> 图:0-1 背包的暴力搜索递归树 </p>
|
||||
|
||||
### 方法二:记忆化搜索
|
||||
### 2. 方法二:记忆化搜索
|
||||
|
||||
为了保证重叠子问题只被计算一次,我们借助记忆列表 `mem` 来记录子问题的解,其中 `mem[i][c]` 对应 $dp[i, c]$ 。
|
||||
|
||||
@@ -541,7 +541,7 @@ $$
|
||||
|
||||
<p align="center"> 图:0-1 背包的记忆化搜索递归树 </p>
|
||||
|
||||
### 方法三:动态规划
|
||||
### 3. 方法三:动态规划
|
||||
|
||||
动态规划实质上就是在状态转移中填充 $dp$ 表的过程,代码如下所示。
|
||||
|
||||
@@ -824,7 +824,7 @@ $$
|
||||
|
||||
<p align="center"> 图:0-1 背包的动态规划过程 </p>
|
||||
|
||||
### 状态压缩
|
||||
### 4. 状态压缩
|
||||
|
||||
由于每个状态都只与其上一行的状态有关,因此我们可以使用两个数组滚动前进,将空间复杂度从 $O(n^2)$ 将低至 $O(n)$ 。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user