首页课程小红花墙

考级冲刺 · 小纸条

选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。

第 1 章30第 2 章30第 3 章30第 4 章30第 5 章30第 6 章30第 7 章30第 8 章30第 9 章30第 10 章30第 11 章30第 12 章30第 13 章5
只印题目
第 1 页 · 正面(题目)
1先估再写

n 是十万,你写了两层循环,会超时吗?

2读题要慢

读题时把关键条件圈出来。

3样例要手算

为什么"看懂样例"比"看懂题面"更可靠?

4想清楚再动手

下一道题,先写三步思路再动手。

5变量名好好起

把一段代码里的变量名改清楚。

6写注释给自己

给你最近一段绕的代码加一句注释。

7备份你的代码

建一个文件夹整理你做过的题。

8定期回看

翻出三个月前的一段代码看看。

9三年回顾

数数你这三年做了多少道题。

10进入算法进阶

给自己打打气,写一句话。

第 1 页 · 背面(答案)

参考答案(家长):尤其注意数据范围、边界说明、输出格式。

参考答案(家长):一百亿次,必然超时,要换算法。

参考答案(家长):坚持一段时间,会明显感到写代码变顺了。

参考答案(家长):样例是具体的,能验证你的理解对不对。

参考答案(家长):注释写"为什么",不写"是什么"。

参考答案(家长):改完再读,逻辑会清晰很多。

参考答案(家长):多数人会发现能改进的地方 —— 这就是进步的证据。

参考答案(家长):按方法或来源分子文件夹,好找是关键。

参考答案(家长):写下来贴在桌前,卡住的时候看一眼。

参考答案(家长):数目不重要,坚持下来才重要。

第 2 页 · 正面(题目)
11复杂度:为什么要估

数据规模一百万,能用两层循环吗?

12常见复杂度对照

把这张对照表抄下来。

13数组复习

开一个一百万大小的整型数组要多少内存?

14前缀和

区间 [l, r] 的和怎么算?

15差分

给 [l, r] 全加 k 怎么操作?

16双指针

有序数组里找两数之和等于目标值,怎么用双指针?

17滑动窗口

求最长的和不超过 k 的连续子数组(元素为正)。

18排序的选择

怎么按第一个关键字升序、第二个降序排?

19二分查找

写一个查找第一个大于等于目标值的位置。

20二分答案

什么样的题适合?

第 2 页 · 背面(答案)

参考答案(家长):考场上先看数据范围,思路能少走很多弯路。

参考答案(家长):不能,一万亿次运算远超时限。

参考答案(家长):前缀和 r 减去前缀和 l 减 1。

参考答案(家长):约 4 MB,开在函数里会爆栈。

参考答案(家长):一头一尾,和大了右指针左移,和小了左指针右移。

参考答案(家长):差分数组 l 处加 k,r 加 1 处减 k。

参考答案(家长):写一个比较函数,先比第一个,相等时反着比第二个。

参考答案(家长):右扩到超了就左收,过程中记录最大长度。

参考答案(家长):问"最大的最小值"或"最小的最大值"这类。

参考答案(家长):找到就往左继续缩,最后左边界就是答案。

第 3 页 · 正面(题目)
21递归复习

写一个递归求斐波那契,再说说它慢在哪。

22记忆化

给斐波那契加上记忆化。

23深度优先搜索

用它数一数网格里有几块连通区域。

24广度优先搜索

求迷宫里从起点到终点的最少步数。

25回溯

写一个全排列。

26剪枝

给你的搜索加一个剪枝。

27字符串处理

把一行用空格分开的数字读进数组。

28结构体与排序

定义一个学生结构体并按成绩排序。

29常见易错点

把这五条写在你的检查表上。

30冲刺前的自查

给每项打个熟练度分。

第 3 页 · 背面(答案)

参考答案(家长):从指数降到线性,差距立刻显现。

参考答案(家长):大量重复计算,加个记忆化就快了。

参考答案(家长):广搜第一次到达终点时的层数就是答案。

参考答案(家长):遇到没访问过的格子就搜一遍并计数。

参考答案(家长):剪得越早,效果越好。

参考答案(家长):标记已用、递归、然后取消标记。

参考答案(家长):包含学号、姓名、成绩,比较函数按成绩降序。

参考答案(家长):按行读入后再切分,注意行尾的换行符。

参考答案(家长):低于及格的那几项,明天开始专门练。

参考答案(家长):交卷前照着过一遍,能救回不少分。

op599 课程