研究生算法一定要看懂么?
个人看法,未必正确。 首先,在学术界(当然包括计算机),论文的作用就是用来发表自己的观点的,如果连看都看不懂,那说明你的研究水平还很低,不足以支撑你提出新的想法或者发现前人研究的不足之处。如果看完论文还是啥也看不出来,那就更加说明你的研究能力有待提高。
所以,如果你真的做了研究,发表了论文(不管是不是像知乎这样的问题平台),那至少得保证别人看了之后能明白你说的是什么吧。自己写的论文如果自己都不清楚说了什么,那就是最大的失败。 至于说看论文的目的是为了更好的开展自己的工作,这当然也没错,但是我认为更重要的是去看论文中是否发现了自己以前不知道的内容或者提出了之前未考虑到的视角、分析方法等,这样才能达到研读论文的目的。否则,你把所有的精力都投入到仔细琢磨论文中的方法和细节上,那么即使你花了大量的时间,也不见得就能达到很好的效果——因为你可能根本没抓住重点。
另外,如果仅仅是读懂论文的话,我觉得你应该花不了太多时间,最多一个星期就够了;而如果是想要彻底弄懂的话,恐怕一个月一年甚至更久都还不够。而且,是否真正搞懂了某个问题,也是有一个判断标准的,这个标准不是由你来设定的,而是由这个问题本身的难易程度以及所涉及的知识体系来决定的。与君共勉!
以计算机专业为准吧,因为工科相对要求比较严格一点。
所谓看懂,其实就是能听懂上课的内容,能理解所写代码的思路,并且能复写,能在此基础上简单地修改,并且自己能独立地做实验。
其实考研,很多学校只要求初试科目考数据结构和C语言即可,复试算法可能会涉及到一点点。也就是说,初试不会出现专门考算法的学校,不过,如果是你本科学校是985/211,并且自身基础很不错的话,可以报考一些师资相对雄厚、科研水平相对较高的院校,例如中科院计算机所(自动化所、软件所)、清华大学、北京大学、上海交通大学、浙江大学、中国科学技术大学等等,一般这些院校的话,初试会考一部分算法的。以我报考的中科院计算机所为例,初试考到的部分有:二叉树、快排、DFS与BFS、哈希表、链表、时间复杂度和空间复杂度、堆排序、最小生成数、最短路径、插入排序、插入归并、拓扑排序、递归与迭代、动态规划、快速幂、贪心、队列、二分查找(插值搜索)、双指针。这些内容都在考研算法中算是比较容易的,而且一般也就考一个选择题(计算机所是10选3),和一道编程题,编程题可能稍微难一点,但是也不会太难。
如果是一些普通一点的院校的话,初试可能不会直接考算法,有可能会在数据结构中结合考算法部分,而且也不会很深入地考。不管怎样,初试把数据结构和C语言学好,至少考研初试不会出现问题。至于复试,可能对算法会有一些要求,但是相对初试的难度来说,也会高出一点。
其实就算本科学校不是985/211,只要自身实力足够,都可以报考一些师资雄厚、科研水平较高的院校,而且竞争压力会相对小。我自己本科就是一所普本,报考中科院计算机所的自动化硕博连读,最后分数出来排名第7,前面有三所985、两所211、一所一本院校,剩下的就是两所和我一样的普本院校,可见自身实力还是可以的,而且如果顺利通过了复试,在这10个人里,拿一等国家奖学金(一年1.5万)的也是大概率的事情。所以,只要你努力了,你就有理由报考师资力量好、科研水平高、综合实力强的院校,而且录取概率也会很高,毕竟考这些院校的同学里面985、211是大有人在,而这些同学,最后真能复试通过的人,也就是寥寥无几。当然,有些高分可能去中科院大学了(院系一般,但是名声响,而且工资高一点,就业压力会小一点),不会来计算机所。
总之,无论怎样,首先保证初试要通过,如果本科学校不是太高的话,可以报考普通院校,这样对算法要求就相对较低一点。当然,只要你觉得自己足够牛逼的话,完全可以去报师资水平高、科研实力强的院校,只要能考上,就业压力就小,可以从事大量科研实践,对之后的出路也是很有帮助的(出国or留所or进大厂都会很有竞争力的)。