这几天我一直在集中准备华为 OD 的机试,主要围绕算法题训练和一些系统层面的知识复习,进行了一系列提交与整理。
从 3 月 19 日开始,我正式进入了集中复习阶段。那天我主要回顾了基础内容,同时也写了一个冒泡排序的练习题。为了强化嵌入式知识,我还整理了 C 语言第 18 到 20 节的内容,推进 embedded_interview 仓库的构建。
接下来的几天,我主要把精力集中在 Huawei_OD_Test 仓库中,一边练习题目,一边整理提交记录。例如 3 月 20 日,我完成了哈希表相关的题目,包括字母异位词、两数之和、数组交集等经典题型,并记录下 3-19 的复习日志作为阶段性回顾。
到了 3 月 21 日,我开始集中攻克 COE 系列题目,比如 Boss 的收入,并尝试用不同方式建模数据。与此同时,我也同步维护了另一个 HandoutCode 仓库,主要是整理链表、栈、队列这些数据结构的基础知识,为后续算法刷题提供支持。
3 月 22 日我继续推进这些基础内容,同时还练习了“猜字谜”这一类的逻辑类题目。
3 月 24 日和 25 日则进入了动态规划与系统层面知识的并行推进阶段。我实现了“装满书架”和“01 背包”这类 DP 问题,也开始整理系统调用相关内容,比如文件打开关闭、进程调度和多线程实现等。在这个阶段我能明显感到自己的知识结构在变得更加清晰。
最近两天(3 月 26 日、27 日),我集中对前面做过的 COE 系列题目进行了复习,整理 C0E1 到 C0E4、C0E10 到 C0E12 等题型。同时也对一些前期理解不深入的题目进行了回顾,例如“01 背包”与“多线程调度”这类逻辑较复杂的题目,我重新调整了代码实现,并补充了注释。
整体来看,这一阶段我保持了几乎每天都有代码提交的频率,涉及内容涵盖算法题、数据结构、操作系统基础和嵌入式知识,既有刷题的实战积累,也有理论的沉淀。每一次提交背后,都是一次小小的突破。这些记录会持续更新,等有空我也会把部分题解和思路进一步整理成博客文章。
这一段时间的刷题,就像在不断攀登一座看不见顶的山。每一道题、每一个 commit,都是我和困惑正面交锋的证据。虽然有时候真的很想躺平,但每次写完代码、解决一个 bug,那种“原来我也能搞定”的成就感,真的会上头。
继续爬,继续写,继续成为更强的自己。我们,下一个算法题见。