日志 0 | 做梦都在学算法。。

学校常年键政的 cs 群里少有有价值的信息,然而一次偶然的翻看聊天记录改变了我整个暑假的安排: 我从那天起才知道美国的暑期实习竟然要提前整整一年开始投递申请 (国内应该春季左右开始?),今年秋招赶不上的话只有来年春招可以投,而春招的机会少而又少。若在毕业的前一年没有暑期实习,毕业后也就没有所谓的 return offer,想找工作的话大抵得读个研究生苟着 F-1 身份才能继续找实习。这是一周前的一天,心情一天难以平静: 平时过度关注自己喜欢做什么而把时间消耗在一些不能突出专业能力的 project 上,写码能力也远不如同龄的竞赛大佬们,更何况我的规划是三年毕业。严格地说,为了在大三毕业有落定的工作,今年暑假我必须得开始找明年的实习了。

有朋友问我为什么不四年毕业,四年毕业的话准备时间充裕得多。我十分同意这个观点,但是因为一些个人原因我的最优选择是能三年就三年。三年毕业后的工作选择太少的话,我还是会再读一年。目前来说,我想先以三年为目标努力。考试周破防那视频说得好,要想考八十多分儿得往一百分儿复习,怪有道理。

压力很大。真的很大。非常大概率来不及准备,拿不到面试。拿到了也过不了。但是与其紧张,不如早点开始补专业知识,道理我是知道的,但是焦虑还在心里散不去。那天前我还在建模建站摸鱼划水,那天后我一直闷在房间里看书写码,每天的学习时间粗略估计在十小时上下。这样的生活不知不觉三天过去了,压力每天都有,压力每天都没有减少,唯一的正反馈是每天都充分利用了时间带来的。每天起床看算法导论,补基础的数据结构和算法后开始刷题,碰到花十几分钟想不出的 medium 题的时候,那股压力就涌上来了,然后开始毕业后规划的思考,需要一段时间才能平复,继续进入学习的状态。三天的成果不太能量化,愿我能如此坚持下去,一个月后再回想看看有多少进步。

我从来没想过以后回国工作,所以很在意毕业后的工作这事儿。如果哪天开始有了一点点回国的念头,那肯定是因为国内的墙倒了 (客观因素)。今天似乎开始习惯每天因为明后年的工作而焦虑,心态也开始慢慢地 (真的很慢… 无法适应突然而来的 routine) 放平。我若是外人,我倒挺瞧不起我这种人的。短时间冲刺 SDE 有点亵渎人家程序员那味儿。真的,哪个强人不是多年积累写码经验?凭什么我狠狠地刷几百道题就去投简历了?大概是得不到面试机会的。实在不行就当预习 CS577 了。

所幸自己还真挺喜欢计算机的,这几天虽累但没被难的概念折磨得丧失那股冲刺的劲。贴几个最近点通我的视频/文章吧,对一些方法的理解很有用:

/_ 数学不好没看懂 substitution method,通过这个视频对 recursion-tree method 清晰了很多,master method 看懂了一部分,没看懂一些不适合的 case 的证明 _/
YouTube - Solved Recurrence Tree Method

/_ 从没考虑到的 int overflow _/
Extra, Extra - Read All About It: Nearly All Binary Searches and Mergesorts are Broken

/_ 理解应变 Binary Search 的不同使用场景; 作者还是校友 _/
How to write binary search correctly
Generalized binary search

就记录到这儿吧,写题去了。