Description
在上这个课程之前,我一直对算法感到畏惧。而又因为平时很少用到这些算法知识,没有动力去深入学习算法。不过,考虑到自身职业发展的需要,一线互联网大厂都很注重算法,决心借此课程提升下自身的不足。
这门课程我的收获大致有这些:
第一是对算法题目类型的总体把握。线下的课程时间虽短但内容密集,我对算法题目的类型有了整体把握,对未来努力方向也有了规划。另外,老师强调说要挑自己的弱项加强练习,我在整体把握的基础上圈出了一些弱项,对于比如递归等要重点练习。
第二是提升了自信心。老师在授课过程中提到对于一些题目,初次见到没有思路是正常的,先使用暴力解法将题目解出来,这样再想优化的思路。即使没想到优化思路也是正常的,可以先看答案将思路记下来,反复练习。这使我的自信心得到了提升并认识到,在算法面试这方面,努力大于聪明,大部分人都是靠投入时间熟悉常见的解题套路并反复练习才能取得成功的。毕竟我不是要当算法专家,没必要把解题的来龙去脉搞得清清楚楚。他山之石可以攻玉,与其自己想破脑袋去解题,不如直接借鉴前人的优秀思路。
第三是学习算法额外的收获。本来只想提升算法的做题能力,但是在通过一个月的练习后,发现有些算法的思路很精妙有意思,经常会感叹这也可以,打破了我对算法枯燥的一贯认识。同时算法的学习和数据结构也紧密相关,这使得我对工作中用的JAVA语言的常用数据结构也有了更深入的了解。现在工作中,在使用数据结构的时候,能从使用效率比如时间复杂度的角度考虑问题了,而不是像以前一样随意的挑选数据结构而不去考虑为什么。
总结下,这一个月的收获还是蛮大的,我有了努力的方向和信心。师傅领进门修行靠个人,老师给了方向,剩下的就是个人努力了。而且除了这一个月的练习,以后也要坚持定期做题提升熟练度,这是一个有追求的职业程序员的基本素养吧:)
最后感谢极客时间做出的这门课程,老师的能力足够牛,同时工作员工也很积极负责。祝极客时间越办越好。