第 326 课
记忆化搜索
🔵 基础 约 7 分钟
一句话理解
记忆化搜索:递归 + 存结果。
为什么要学
写着像 DFS,本质是 DP。
讲解
算过 f(state) 就记下。顺序由递归自然保证。
例子
int dfs(int i) {
if (i <= 1) return 1;
if (memo[i]) return memo[i];
return memo[i] = dfs(i-1) + dfs(i-2);
}
斐波那契记忆化。
常见错误
- memo 0 既当没算过又当答案 0。用 vis 或 -1。
- 状态不哈希。
练习 做完再看下一课
记忆化搜索会把结果存进 ____ 数组
或 dp。
在线练习 C++ 在浏览器里编译,代码不会上传 已通过
Ctrl / ⌘ + Enter 运行 · Tab 缩进
隐藏测试点只是界面不展示数据。题目 JSON 会下发到浏览器,可在开发者工具里看到,只适合自学,不是正式比赛评测。
进度保存在本机浏览器里。
左右方向键也可翻课