Interview Prep

面试复习系列总览

这组文章怎么读、每篇解决什么问题,以及写这组内容时我刻意保留的边界。

面试复习系列总览

这组东西不按教材顺序来,也不想写成那种“看起来很全,其实不好讲”的面试模板。更实际一点的做法是先抓主线,把自己最容易讲散的几块重新串起来。

我最开始复习时的问题不是没见过这些知识点,而是每个点都知道一点,真要开口的时候又接不上。C++ 能说对象模型,也能说智能指针,但一问到资源管理和并发,又容易答成两摊;OS 也是一堆名词在脑子里飘,连不成一个顺的解释。

最早只想写两条主线:

  • C++:对象怎么活,资源怎么管,多线程代码为什么会出事。
  • OS:程序怎么变成进程,地址空间和文件描述符分别管什么。

写到后面发现,面试里躲不开的还有一摊后端八股和算法模板,就顺着同一套思路往下补:每篇都不追求全,先把最短那条能开口的回答链立住,再往里填细节。现在目录里的东西大致分四类。

主线

这几篇是 roadmap,写的是怎么把一串名词连成一句话。

后端八股

这几篇是 crash,口吻偏“这份笔记整理……”,按主题把高频点摊开。

算法模板

刷题用,把一类题的板子和典型题码在一起。

项目复盘

边界

这些都不会写得特别全,更像是复习时给自己留的“开口版本”:先把最短那条回答链立住,后面再补细节。不然一上来就把所有定义、分类、例外情况全塞进去,最后反而什么都记不住。

后面如果继续写,大概率还是沿着这个思路拆小一点,比如单独写 fork/execmmapshared_ptr 的代价。这些东西平时都见过,但真到面试里其实很容易讲空。