沿着学习的顺序阅读
计算思维、递归、分治、贪心与动态规划。
递归的基线条件与递归步骤,以及递归加法、汉诺塔和归并操作的写法与执行顺序。
用状态、转移和重叠子问题的复用求解最长递增子序列与0/1背包,并比较自底向上和记忆化两种写法。
分治法的分解、求解与合并,以及寻找最小值、同时求最值、归并排序和二进制加法中的实现。
从找假币和分解因数出发,说明如何把问题拆成有限、可执行、可评估代价的步骤。
用二维网格表示迷宫,按四个方向递归搜索,用访问标记和回溯找到一条通路。
每一步取当前最优且不撤回的贪心策略、找零钱与辗转相除的实现,以及判断贪心何时失效的方法。