Unify punctuation.

This commit is contained in:
krahets
2023-07-26 08:59:36 +08:00
parent 35973068a7
commit 63a0e73df0
46 changed files with 201 additions and 201 deletions

View File

@@ -231,8 +231,8 @@ $$
为了提升算法效率,**我们希望所有的重叠子问题都只被计算一次**。为此,我们声明一个数组 `mem` 来记录每个子问题的解,并在搜索过程中这样做:
1. 当首次计算 $dp[i]$ 时,我们将其记录至 `mem[i]` ,以便之后使用
2. 当再次需要计算 $dp[i]$ 时,我们便可直接从 `mem[i]` 中获取结果,从而将重叠子问题剪枝
1. 当首次计算 $dp[i]$ 时,我们将其记录至 `mem[i]` ,以便之后使用
2. 当再次需要计算 $dp[i]$ 时,我们便可直接从 `mem[i]` 中获取结果,从而将重叠子问题剪枝
=== "Java"
@@ -404,9 +404,9 @@ $$
总结以上,动态规划的常用术语包括:
- 将数组 `dp` 称为「$dp$ 表」,$dp[i]$ 表示状态 $i$ 对应子问题的解
- 将最小子问题对应的状态(即第 $1$ , $2$ 阶楼梯)称为「初始状态」
- 将递推公式 $dp[i] = dp[i-1] + dp[i-2]$ 称为「状态转移方程」
- 将数组 `dp` 称为「$dp$ 表」,$dp[i]$ 表示状态 $i$ 对应子问题的解
- 将最小子问题对应的状态(即第 $1$ , $2$ 阶楼梯)称为「初始状态」
- 将递推公式 $dp[i] = dp[i-1] + dp[i-2]$ 称为「状态转移方程」
![爬楼梯的动态规划过程](intro_to_dynamic_programming.assets/climbing_stairs_dp.png)