我觉得你要是不去看算法导论,好公司的面试基本都跪!算法岗,硕士一般公司都是招去做算法实现的。博士才是招过去做算法优化,算法理论推导的多。普通程序员不懂机器学习算法的,以前没有系统做过这方面研究的,做起实现来还是很难的,因为牵扯到算法的理解。做机器学习,人工智能方面的东西还是要有这方面的基础。所以,才需要招有这方面背景的人来做算法实现。
而做算法实现,就需要牵扯到coding能力了,机器学习很多算法也都用了算法导论里面的东西,比如二叉树,图,Hash等这些都会在实际中遇到的。而且现在算法岗需要用C++和Java的比较多,python也有,貌似少一点。这也牵扯到CS基础能力,对语言的理解程度,算法复杂度等等问题。C++大把大把的坑需要你去踏过长教训(说多都是泪)。。。所以,为了好工作,以后上手快,我觉得你需要学的东西其实挺多。。。
1.机器学习算法方面,就多刷论文,发paper(这个含金量高);
2.算法导论还是要刷,数据结构这完全就是程序员标配!这本书1个月你就能刷完了,研究生时间大把大把的,你要是一天在实验室呆10个小时刷这本书,你一个礼拜就刷的很详细了;
3.程序语言也最好选一个,python最简单入门,Java其次,C++最坑(在坑里出不来了,泪),多写代码,多调试,这个很重要,如何快速定位bug!
我觉得2,3学好了,哪怕你木有找到算法岗的好职位,也能当个很好的程序员了。。。
研究生3年,时间很长也很短,在学校最宝贵的其实就是时间;现在让我回学校,我觉得我一整天都会想着去啃书,啃算法导论,啃C++,啃大把大把的论文,学英语,学数学。。。时间真的是最最宝贵的,而且你会觉得真的努力去学了,时间根本不够用。。。学的越多,不知道的越多,越想学,然后“恶性循环”!