2022年度学习小结

我的2022年计算机学习小结

最近陆续在各个平台上看见年度总结,也看见不少网友在分享自己的2022年总结,我这里就简单对今年学过的计算机知识做个总结,也算是在我漫漫转码路上的一点记录。背景介绍:目前CS研一,天坑转码选手,和很多大佬比起来差远了。下面罗列下今年的学习内容:

  1. 算法主要是在力扣上面刷题,这也是我这一年花的时间最多的活动,因为去年在力扣上面刷过两三百道题,所以就没有看书啥的,今年从3月份开始重新刷题,4月份到现在一直坚持每日一题打卡,也开始参加周赛,目前周赛分数1910。

  2. 除了在力扣刷题外,11月份了解到Acwing这个平台,大概学完了算法基础课,洛谷上面也刷了几十道题,这两个平台大概200道题,今年总共大概刷了1100道题目,下面是力扣的截图:

今天力扣年度总结也出来了,看到这个还是挺感慨的:

  1. 一点点想法:我只能作为转码选手写一点点感受,科班大佬可略过。算法学习的话,学完一些简单的数据结构就可以开始刷题了,如果只是看算法理论的话,刚开始很难学懂学会。我开始是跟着标签刷题,把相关知识点学的差不多然后开始学下一个知识点,当然这样有个问题就是,对于一道算法题,如果你一开始就知道这道题应该用什么解法,其实你已经解决这道题一大半了。所以就是另外一条比较好的学习方法:参加周赛,周赛前三题一般都是基础的数据结构和算法,如果做不出来的话大概率是自己不会的知识点,这个时候比赛后要及时做同类题目进行练习。因为我自己周赛分数也不算很高,只能从我个人的经验做简单分享,可以去力扣上看看有很多大佬分享相关的经验贴。
  1. 书籍方面:从3月份开始重新看《C++ Primer》,之后陆续看了《Effective C++》、《Effective STL》、《深度探索C++对象模型》、《深入理解C++11》和《Effective Modern C++》几本书。有的书籍简单记了些笔记,有的则没有,虽然感觉看了不少书,但是很多内容并没有完全掌握,这方面的学习应该结合面经,自己总结一些笔记啥的,这也是我后续学习的计划。

  2. 课程方面:看了侯捷老师的面向对象和 C++11 视频课程,学 C++ 同学应该都知道侯捷老师的课程,比较推荐。另外学了一门国外的 CS106B 课程,准确来说这门课我只做了 assignment,然后简单看了 PPT。这门课其实是对数据结构和算法的一些运用,个人感觉作业设计的非常不错,也提供了一些本地测试,对于初学 C++ 和数据结构的同学还是很不错的,我的作业代码备份在这里

这部分主要是通过做一些 lab 的,书的话看的不多也零零散散:

  1. 首先是南大的 PA,我学的是 PA 是汪老师带的大班版本,这是老师B 站主页:我是汪犬人的个人空间_哔哩哔哩_bilibili,相比南大拔尖班的PA来说,这个可能更适合新手,我大概只做到 PA3,后面没有继续做了。

  2. 然后另外学的两门课程分别是 MIT 6.S081CS 144: Introduction to Computer Networking 这两门课也是比较知名,分别是操作系统和计算机网络,我在写 lab 的时候,大部分都是参考了别人的代码,因为感觉理论基础并不是很好,写完的效果其实也并不是很好,后续打算结合理论知识重新学习下。

  3. 数据库:目前仍在学习的一门课程是:CMU 15-445/645 :: Intro to Database Systems (Fall 2022) ,这门课目前刚做完 lab2,B+ 树我差不多写了一个月,虽然也是参考别人思路,但是在长时间的 Debug 折磨下,感觉 B+ 树相关知识还算理解了,下面是最近通过 gradescope 测试的截图:

此外还有一些杂七杂八的,比如 4 月份那会学了点 Linux 系统编程,但是只看了几节课就看不下去了,还有 7 月份原本打算参加清华的 rcore 操作系统训练营,学了一点 rust 基础语法,但是感觉有点难就转去学上面的 6S.081 了。

我在20年的时候看到《奇特的一生》这本书,了解到柳比歇夫时间记录法,然后也用软件记录自己的时间,但是我并不是一个擅长总结的人,很多时间只是记录下,也没去统计整理,没去反思总结。

大概看了下今年的时间,学习上面计算机知识花了 1078h,有 500 h 都在刷题上面,其实根据时间记录能反应一定的问题,虽然看起来 1000h 挺多的,但是平均算下来一天也就 3h 左右,抛开日常生活的时间,抛开其他的事情,远远不止 3h。然后看了下自己娱乐时间,大概有 1500h,这一年打游戏时间花了 600h,剩下的 900 h 大部分是网上冲浪(即刷视频、刷知乎这些活动),这里就可以看出今年其实还是挺偷懒的,浪费了不少时间。

这一年整体学习情况还算可以,但是明显看出来我在网上冲浪这件事上花了太多时间,而且大部分是没有意义的刷刷刷,23年打算改掉这个坏习惯,把这部分时间拿来看看纪录片或者看看小说,甚至是去看看电影,也比无意义的刷手机要强得多。

另外就是感觉自己输出较少,学习的时候几乎没怎么记笔记,这样的话知识的留存率就比较低,后续学习的话打算多写点笔记,写写博客啥的。

其实本还想写点生活方面的,但是感觉我也没啥好写的,几乎没啥社交,也没兴趣爱好,唯一可能的是网络冲浪?(笑死),希望 23 年能找点其他的爱好。

其实我一般不会看自己的计划,或者说大部分的时候不会按照计划执行,一般就是想到啥开始弄啥,这里只是做个简单的规划:

  1. 算法:每日一题坚持打卡,周赛争取上 2200 分;
  2. 课程:完成 CMU15-445 剩下两个 lab、可能会看下 MIT6.824;
  3. 计算机基础:这部分打算看看书籍了,之前收藏了一些书单,跟着看看,顺便理论结合实际,再把之前做过的 lab 复习下;
  4. 最后就是改掉网上冲浪的习惯,每天最多看 1h。

写于2022/12/30