算法和数据结构yyds

2021/08/21

前言

我的新工作已经确定下来啦,回顾一下近期找工作的过程,平时工作摸鱼还是太安逸的,只有找新工作的时候才能意识到自己的不足。在这个过程当中,自我感觉有非常大的成长,除了把八股文背的更加溜以外,还见识了很多优秀的面试官,甚至加了几个大佬的微信,虽然没能加入他们团队,但是我蛮希望以后能保持联系,因为他们实在是太优秀了。

自己在一些方面的不足,尤为感知明显的就是算法和数据结构。说起刷题,其实原来在学校的时候有过训练,但是经过这些年业务代码的洗礼基本忘的差不多了,近期找工作所以又开始准备起来了,因为时间很短,比较急功近利所以很菜,不过武汉这边公司对这部分考察的就不多,即便是考察基本都是Easy题,就两个有序链表合并 我都遇到过两个公司考察。

但是近期的准备让我思想上非常大的转变,原来在学校因为学习C语言去做一些课后习题或者学习数据结构去完成一些相关题,因为那个时候没有项目经验,实际编码也就停留在平时写写demo。那时刷题就非常的空洞,只是非常刻板的完成习题的要求,没有自己的理解。现在随着工作年限的增加,项目经验的积累,对一些数据结构或者一些业务的理解,现在去做算法题感受是非常不一样的。会觉得很有意思,除了感叹一些超人类的解题思路,看到一些讨论和题解里面别人的代码风格都觉得有学习到。

感觉平时写业务代码和背一些八股文,把这个工程师基本素养给忽略了,所以我决定以后每天晚上睡觉前刷一下,保持题感,预防老年痴呆。经常进行刷题还可以更加关注自己写的代码的质量,例如评估空间复杂度,时间复杂度,代码可读性和简洁的平衡等,听过极客时间的覃超老师说过一句话,觉得很有道理,他说程序员写代码不关注自己的时间复杂度,就像是一个航海家在大海中航行不关注自己油量这是非常危险的

推荐平台

推荐几个我觉得比较好的OJ平台

  1. 洛谷-没那么功利,题型偏比赛

洛谷在学生中还是非常火的,从NOIP到ACM的爱好者都喜欢在上面进行训练,每周也有赛事。上面的题型稍稍偏竞赛,除了对编码能力的基本要求,数据结构的灵活利用要求,更重要的是数学思维,对于我而言.emmmmm….可能现阶段就不是那么合适了。

  1. PAT-难度梯度明显,题型偏基础

PAT是浙大的陈越姥姥创办的一个考试,里面主要是练习题,从乙级到顶级分别对应,入门,中等,困难,其中入门是考察编程基础,中等是考察基本数据结构,顶级是经典算法和高级数据结构。因为它的梯度分的还是比较细一些,比如他的入门题,基本就是很多语法书后面的习题,可以在线OJ刷一下,还是蛮好的。

上面两个都比较偏学术一些,下面的两个就可能更靠近工业更加功利一些。

  1. 力扣(国区)-LeetCode是大湾区刷题家打开频率最高的网站之一-

这上面的题都非常经典,因为经典也是会有很多大厂的原题出现,很多公司也会在上面拿题目直接考察候选人。我自己也是主要在这上面练习,因为上面有算法爱好者都在上面进行题解的分享,也有很多和我一样的菜鸡在评论区哀怨连天,抱怨自己很菜连题目都读不懂😂,给人很真实,网友也非常有趣。

力扣本身是免费了,无论你给不给钱他都提供基本的功能给你使用,但是它也提供增殖服务,开了会员以后你可以享受一些专属题目(但是普通题目就足够你刷了,而且例如剑指offer这样的经典题它也不是收费题,还是很良心的),会员还可以享受一些在线debug的功能,极速判题等,毕竟人家机器资源也是花钱的,白嫖能基本满足功能就很好啦。

但是我还是开了一年会员,会员还算是比较贵的,一年要500R,我开会员的原因除了能体验会员的服务以外,我还是想提醒自己这是花了钱的,每天还是要去享受一下不能浪费了。

leetc

斥巨资开了一年,逼自己不白花钱


  1. 九章算法-算是力扣的竞品公司,我推荐他的原因单纯就是注册送7天会员….

上面的题也很不错,值得一提的是它上面的数据库的题都是免费的,隔壁力扣数据库题基本都是会员提。一些想要在sql上提升的同学,可以去九章算法把上面数据库的题都给刷一遍。缺点也有,因为可能使用的人比较少,所以整体生态可能欠缺一些,这里的生态是指题解和评论,在我这个菜鸡看来刷题很重要的一点就是它的题解,因为一个平台用的人多了,无论水平高地总有热心的人会分享自己的题解,你总会碰到让你能看明白的题解,不然你自己死磕一个题目其实是很浪费时间的。

推荐资源

平时闷头苦刷题,其实不是一个比较好的提升方法,后期越到后面边际效用越发明显,还是要善于总结或者去看一些大神们的总结。所以我这里推荐一些,我自己收藏的一些资源,也是一些大神做的总结,因为数据结构和解题方法搞来搞去就是那么几种。

  1. 图解算法-这是一本书,入门必看,先把常用的数据结构和解题方法过一遍,对刷题有大的帮助,拒绝死记硬背,微信读书可以免费看
  2. 编程之法:面试和算法心得-这也是一本书,纸质版京东有售,但是纸质版其实是对原来作者July在github上面的一些文章汇总的,链接是算是纸质版定稿前的电子版,我认为质量也非常高,看完受益匪浅
  3. 小吴算法-这是一个大佬做的动画图解算法的网站,里面会定期剖析一些题目,有时候一些题目解法真的很抽象,但是通过图画的形式呈现的就非常清楚
  4. leetCode-Go-这是一个大佬把leetcode上面所有的题都刷完了,然后写成一本电子书,特点是解法都是100%领先,语言用的是GO,LeetCode后面补的题目他也会持续更新,而且还免费为爱发电,真的非常难得。

后言

其实本来我就想说一下,我开了一个LeetCode的会员,立一个flag希望大家监督一下我的,不知为啥写着写着就成了分享帖了,我很菜的,我题量也才50题左右,也在慢慢的刷。现在确实觉得刷题很有意思,也觉得挺重要的,这个重要不仅仅是体现在很功利性的这种面试上面,更多的是工程师的一种职业素养,而且力扣上面的评论真的好好笑,下面找了几个有趣的评论:

一杯茶 ,一包烟,一道力扣做一天。一根笔,一双手,一个 Bug 敲一宿。

每天起床第一句,先去力扣看看题;每次看每日一题,感觉自己要智熄;自己思考两小时,最后从题解 copy;打卡,我要打卡,领完积分骗自己 - 燃烧我的力扣题。

A LeetCode a day keeps unemployment away.

有人相爱,有人夜里开车看海,有人 LeetCode 第一题都做不出来。

(转载本站文章请注明作者和出处 没有气的汽水



┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
├ 文章已经完啦, 想要第一时间收到文章更新可以关注↓ ┤
└┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┘

Post Directory






下面是评论区,欢迎大家留言探讨或者指出错误哈