BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / aim-graduate / #678519同步于 2012/4/20
该镜像源已超过 30 天没有更新,可能在源站已被删除。
AimGraduate机器人发帖

【专刊投稿】【跨专业】【整体流程】【上机心得】by qoshi

qoshi
2012/4/20镜像同步0 回复
【前言】 前半部分仅仅针对跨专业的考生,想看上机的同学请直接往下翻,大牛的话我建议不用看了。 【个人情况】 总分311(边缘分数) 数学107(纯自学可以接受) 计算机87(考砸了) 英语:63(感觉也没考好) 政治:54(正常水准) 原专业:化学 跨考专业:计算机 计算机基础:中学NOIP省一等奖(说白了就是会点数据结构罢了) 大学辅修计算机(可忽略不计,给钱就行那种) 【一些唠叨】 之前看到过这么一句话,大概在一年以前:不是跨专业考研不是考研,不是跨地区考研不是考研,不是跨学校考研不是考研,不是跨考408不是考研,不是考清华的408不是考研。所以每一位想考408跨专业的同学,请做好心理准备。 首先,你要对这个行业有足够的了解。改行计算机,作为一个ITer这里并没有你想象中的那么光鲜的生活,你有可能患上很多由于久坐引起种种疾病;这里没有7点起床10点睡觉的工作节奏,很大半部分是你老婆孩子都睡了你才开始工作;这里没有你想象中的轻松的工作氛围,大部分公司(据听说)都是内部淘汰,你不进步,就意味着要再见;这里也没有你想象中的轻轻松松拿高薪,乔布斯在车库里面吃过多少苦只有他自己才能知道。 其次,搞清楚自己为什么要考研。是因为要跟女朋友在一起?是父母的意思?是为了逃避找工作?是为了一个毕业后的big offer?是为了更好的完善自己?是为了改变自己的命运?是为了追求自己曾经被迫放下的梦想? 最后,并且是最重要的,请一定弄明白,自己为什么要跨专业考研?你究竟有多痛恨自己的原专业?你究竟对计算机有多大的向往?是心底里的呼唤,还是仅仅是为了他表面的光鲜? 最后的最后,请每一位跨考的学生,看一下乔布斯在斯坦福大学的演讲,里面有这么一句话:You have got to find what you love, and that is true for your works and for your lovers. Your work gona to fill a large of your part of life, and the only we you would be truly to satisfied is to do what you believe it is a great work, and the only to do the great work is to love what you do. If you have not fount yet, keep looking and do not settle.大意是:你需要找到你真爱的事物,工作也好爱情也罢。你的工作将成为你人生中的很大一部分。唯一能让你感到愉悦的事情是做你喜欢的工作,做你认为很伟大的工作,而你认为伟大的工作一定是你热爱的。如果你仍然没有找到,请坚持寻找,不要随遇而安! 【确定目标】 讲一点我自己。我去年的这个时候不知天高地厚打算考清华,但是看了一遍数据结构的视频和高数上册和线代之后就又去玩了。第二学期,也就是大四上学期,我女朋友被保送中科院植物所,于是我压力山大,开始好好学习......但此时感觉时间不够,就对自己的学习计划和目标进行了调整,选择了北邮。之所以选择北邮,是因为不是34所(但后来发现不亚于34所难考),并且北邮与通信挂钩,计算机研究生工作就业率很高,最后一点原因就是无意中发现了北邮人论坛,上面很多战友和师兄师姐都在热心地解答同学们的问题,看了考研专刊后,决定报考北邮。在这里感谢下shallweyoung羊总,真是怎么问他都不会烦。一开始打算报考网研廖总组,但是复习种种不顺利,最后确定报考计算机罗红组,最后结果竟是廖总组没满,罗红组9个人pk4个工程名额。 总之,目标要尽早制定,然后根据自己的复习进度以及状态,进行微小的调整,一步一步迈进。多讲一句,一开始的目标一定要制定的比较远大,这样才能激发出你全部的能量。 仍然以一句话做结尾:志存高远,脚踏实地! 【跨考复习】 老实说我的分数并不是很理想,这一部分就不多讲,大概说说做个参考。 数学: 数学是这几门课最重要的一部分,一定要早下手,除非你有大心脏(我考前一周才会算极大似然估计,不建议这么做)。首先就是要看课本,做练习题,这个不多讲。然后就是复习全书,每个题都认真做,难懂的做个标记,下一轮的时候再认真看。关键的事情是总结,把每一章需要的公式,都认真的记下。当时那么多公式记不住,怎么办,我就弄了一些纸,抄下来,然后贴在桌子上(固定座位可以这样搞),走神的时候就看看公式。数学最难的其实就是前面几章一元函数的那些东西搞明白了,之后的就简单了。最后一句:数学解题是有套路可循的,过完第一遍全书,第二遍的时候就要自己总结题型和方法了,这样成长较快。 计算机专业课: 我自以为我对计算机是有天赋的,但是结果却对我来说是个大大的打击。我天真的以为我只靠参考书就可以。买来了几乎所有的参考书(除了王道的,略搞笑,阴差阳错吧)。看参考书的知识点,不懂就翻教材,然后做习题。事实证明这种方法是很不可取的。正确的方法是:看课本(结合近几年大纲),看专业课视频(网上都有),然后买一套参考书,注意是一套,做题查缺补漏。做做历年真题,买一套模拟题,认真对待,就ok了。 对于复习的顺序。如果真的是零基础,我建议先看下c语言,为数据结构什么的做个铺垫,c语言要看:数据类型以及表达式,顺序设计,选择设计,循环控制,数组,函数,指针(稍微看看即可)。这些章节的东西有些是需要记在本子上面的,比如说一些基本的语法啊之类的,对于你对数据结构和上机会打下基础。时间允许的话,那些简单的例题要自己上机做做,哪怕是抄抄,对后面的数据结构和上机考试有很好的铺垫。C语言之后我觉得就应该是数据结构了,这东西有时候理解起来比较抽象,其实记下来怎么回事就行了,为什么这样的原因当然也要懂,但是理解的时候切勿钻牛角尖,否则后果不堪设想。再然后我建议看组成原理吧,不要被电路吓到,看看即可,一般不会考,但是简单的门电路、片选译码器还是要明白怎么回事。之后就是操作系统,这个不是很难,概念比较琐碎,理解记忆性东西比较多,不过慢慢来,基本理解了就记住了。再之后就是网络了,这东西最简单,每一层的协议搞清楚,干什么的搞清楚,原理搞清楚,至于底层怎么实现,电压什么的就完全可以忽略了。整个学习的过程一定要注意自己总结。每一章都要自己画个大概结构图,对于理解、记忆起来十分有帮助。并且在之后做题方面也不会凌乱。这里面网络的是最有层次感的,建议最后自己画个总图,每一层的协议设备等等,画完了知识就全部记住了。 对于参考书的选择,之前写过一个参考书大全,结果论坛上貌似搜不到了,悲剧。我买的是天勤的分科的,这个还挺细,知识点什么的,有的还有些小小的例子比较生动,但是天勤的操作系统我不大推荐,感觉一般。注意参考书一定是参考书,还是要以课本为主,如果你不想只考我这点分数。然后就有一个模拟题的选择的问题。我今年感觉不错的有两套,第一套是天勤的,这套书的选择题质量十分的高,让人无法想象。也是做了这几套题,考试的时候才不会像其他战友那么对选择题感到蛋疼。另一套是王道的,据说压中了算法的题,并且整体看来大家都觉着不错的。我觉得押题这事情主要是看运气,因此没有必要因此选择参考书(政治除外)。 英语: 我是每天做四篇阅读或者写一篇作文(严格按照考研的时间安排,并且不查字典)。事实证明这种题海战术不给力,大家可以参考下论坛上70+的大牛的英语复习方法。 政治: 建议多看看任汝芬序列一或者风中劲草(推荐后者),多做做选择题(可以做风中劲草配套的),政治的区分度就在选择上面,选择高了,政治就上去了,我这种就属于选择比较次的。 【心理调整】 第一点,大家不要被周围其他人的进度所影响。因为每个人的学习能力和之前学习状况都不同,因此没有必要互相比。但是这并不是停滞不前的理由,只有不断地战胜自己,才能有所突破。 第二点,有关种种困难,请都把他们当做对自己的考验,这不是阻碍,只是一点点支线剧情而已。坚持到底就是胜利,考研有人说也是考一种坚持,那些到最后都不放弃的人才会有好结果。 第三点,sth about感情问题。说实话,考研期间,我跟女友的感情也多次出现危机。但是作为一个男人,应该懂得理解包容和担待还有负责。你考研之前曾经也许是为了她而考,但请对自己负责,请对所有支持你的其他人负责,尽快调整好自己,继续出发。你可以压抑一天,可以压抑一周,但这不是借口,不是你堕落的理由。 第四点,写给女生。女生考研真的很让人佩服,这其中的原因有很多,身体比较脆弱之外每个月还要多要承担几分疼痛难忍困倦不已。但是无论如何,还是那句话,坚持到底就是胜利。请每一位女生照顾好自己,考研期间请不要过多关心你的体重和外表,保暖健康才是王道。还有就是女同学晚上请结伴而行,注意安全。对于女生,你们的优势在于踏实,持之以恒,因此,请早作准备,一点一点走,每一步都踏踏实实,这样一定会有好结果。 第五点,写给男生。你们的优势太大了,但是你们的短板也很明显,浮躁,不踏实(相对于女生)。男生的优点在于爆发力高,但请不要把这个当做一而再再而三推迟复习计划的理由。最后一句:男人要对自己狠一点。 【复试上机】 先讲一些废话。我刚出结果后联系了下老师,老师让我认真准备复试,在很多学长看来老师这样说就基本稳了。奈何今年院线工学317,我当时给老师打电话,得到这样的消息:本来打算让你走工学,但是现在分数不够,我这边工程名额比较紧张,要不你问问其他老师或者别的组的,找一个工程比较稳的?当时的感觉就是天都塌下来了。然后跟老师确认了一下,老师的意思是如果找不到别的还可以回来参加复试。种种纠结,给其他老师发了些邮件,但是不是没有回复就是拒信。最终决定赌博式继续参加本组复试,看看上机能不能让老师眼前一亮。奈何今年上机题略水,让无数英雄都没有脱颖而出,我也混了三个题,搞了个30名的名次,最终结果还不错。 讲正经的,看看近两年的题,感觉出题有这样一些趋势。对高级一点的算法考察基本没有,全是简单的概念和模拟。因此在准备上机的时候比拼的并不是你的算法能力,而是考察代码熟练程度,一次性ac的能力,对细节的判断等等。今年事后我也吐过槽,感觉准备了好多都没发挥出来,但仔细想想,进了实验室,做项目,用到的算法其实并不难,即使有高级的算法,只要你能找到,拿来修改后就可以用了,这可能也是题目不难的原因吧,毕竟这里不是ACM。因此各位千万不要忽视简单程序,切忌眼高手低,还是要踏实。 不是废话的废话再说两句。计算机的世界里,只有0和1,我们的程序只有正确和错误之分,不像考数学,有正确的步奏就给分。说专业点,这个过程是透明的,说白了,这个只看结果,人家只在乎你的输出结果是否正确(严格到大小写,空格的多少)。因此,在做每一个程序的时候,请严格按照题目描述的输入输出格式进行。不要自以为代码对了,但是一直不能ac就过了,这其中一定有没考虑到的问题,搞OJ的都是大神,能找出bug的是众神之王,不是我妄自菲薄,也不是我看不起诸位。面对代码,请怀着三分谦卑、三分严谨和四分勤奋,把每一个程序都调试通过。请记住,ac一道题远比题题都PE、WA什么的来的实在。 上机的准备: 前面说过了,c语言的书要看过,上面的东西要自己尝试过。该记的东西要记在本子上,临时翻书太麻烦了,自己做好总结事半功倍。还有一点就是数据结构书里的代码,栈和队列要自己会实现,树的二叉树,二叉排序树的建树和遍历要会。排序要会冒泡差不多就足以应付了。 上机的环境: 推荐个比较水的,但是符合上机考试难度的OJ,九度OJ。上面有很多各个学校考研上机的真题,难度比较合适,并且有星级之分(大部分比较准不排除不准的)。 怎么练习上机: 初学者建议直接按照星级开始刷,针对今年的考试题,前两星的刷完,并且能熟练掌握了准备之中的内容就可以做出两到三个题了,这样老师对你的印象就应该很好了。 下面我给出我自己总结的一些题型的分类,可能不是很完全正确,仅供参考: 模拟类型(这类题常考,看似不难,但是对于初学者来说,用代码完整地写出题意描述中的意思还是需要多加练习): 1000 1001 1020 1031 1036 1038(这题请认真读题) 1013 1014 1045 1046 1048 1050 1059 1060 1062 1063 1064 1065 1067(这个题目可以练习最简单的递归,虽然人家不让用递归) 1068(double比float的好处,可以按两种类型分别提交,看结果便知道) 1070 1075(注意细节) 1177 1179 1183 1186 字符串处理(字符串处理对于实验室做项目来说再常见不过了,因此出题往往也会偏向这部分,应该熟练掌握): 1003 1006(认真读题) 1010 1013 1019 1021 1203(这个题可用灵活的IO代替字符串你想到了吗?) 1032 1049 1055 1058 1059 1182 1192 1199 1206 1334 字符串里面的常用的简单技术有 查找 替换 字符串转换为数字 要熟练(使用库函数或者自己手写都要熟练) 数学问题: 质数的判断:1040 1047 1207(略难可不做) 筛素数法不会请百度 公约数公倍数:1056 1336 辗转相除法 矩阵的一些问题:1180 1173 1191 1193 进制转换 1026 1194 今年就考了,基础但是常见啊! 高精度计算(注意题目描述,注意前导零后续零):1198 1137 用计算机语言模拟一些数学解题的方法还是有难度的 数组的问题: 对数组的操作,简单但是很基础 1004 1018 1039 1052 1053 1057 1066 1174 1334 1363 1375 1398 栈的练习: 1019 1342 队列的练习: 1415 排序的练习: 简单的排序问题:1014 1034 1041 1178 1185 1202 冒泡也好什么也罢但是请一定会手写快排 归并排序:1004 堆排序:1416(其实不是排序题,但是要用到堆的思想请体会TLE的原因) 二叉排序: 1009 1201 字符串排序:1054 1066 1178(先后顺序决定了一些问题请体会) 1190 1195 1419 多级排序(多个关键字,学会stl的sort,并为其编写判定函数):1023 1061 1187 1196 1339 1346 链表、指针的问题: 1181 1788 1789 (后两个题不用指针的话可以用什么做你想到了吗?) 树的练习(加油吧就要胜利了): 二叉树建树、遍历:1184 二叉树概念的考察:1176 二叉排序树的建树遍历:1009 1201 霍夫曼树(不建树求权值你想到怎么做了吗):1416 1172 图(这个略微高端但都是数据结构的的东西建议做做) 图的概念问题:1027(请体会) 最短路径问题(请回忆地杰斯特拉和弗洛伊德) Djs: 1008 1341 1406 1411 Fly:1343(这个不是经典的弗洛伊德,但可以用弗洛伊德的思想,djs也可以做请体会) 并查集的题(不懂并查集请百度): 1012(很典型的) 最小生成树: (并查集+克鲁斯卡尔) 1017 1024 1028 1347 1417(字符串简历索引表) 并查集用数组做的时候上述题目有的可能会超时,请反思自己的并查集可否优化(提示:还是用数组,仅仅加一行即可) 图的搜索:(这类可以忽略 真的可以忽略) 宽搜:1335 1365 1404(后两题可以不做) 深搜:1012(可以用深搜但是感觉还是并查集好些,建议都练练) 简单递归: 1067 1073 1408 1205(非递归也要会) 废话两句 简单的递归和递推的区别在哪? 以斐波那契数列为例 1 1 2 3 5 8 a[n]=a[n-1]+a[n-2] 递归:由未知开始找一个到达已知的道路然后返回解不断迭代a[n]=a[n-1]+a[n-2] 直到 a[3]=a[2]+a[1]=1+1=2 递推:直接用已知求未知,先求a[3],再求a[4]直到求到所需的a[n]为止。 简单递归总是超时怎么办? 1检查边界情况是否都考虑进去,公式是否正确; 2优化 用一个数组保存已经算过的值,递归的时候会有大量的重复计算,如果加入判断条件 当这个状态计算过之后就直接返回值,会节省很多时间。(略抽象,请仔细体会,不懂也没事) 简单的DP(动态规划) 可以完全不做,没多少人能做出来的 放心吧! 序列问题: 基础:1011 1077 1112 1123(1077的升级版真的不难) 背包问题: 0-1背包:1364 1420 1123 1152 1209 1358(为什么1358也是背包?请仔细思考,当然我不排除有其他解法) 完全背包:1072 1395 废话两句: 完全背包和0-1背包求解的区别? 0-1背包从n到a[i]开始扫 完全背包从a[i]开始扫到n,至于为什么,如果你有能力做完上面的题,那么你肯定就懂了,如果做不明白果断不做了,没关系考察这部分的概率很小的。 不是经验的经验: 首先,拿到题,不要急于上机,首先请认真读题,不行就在纸上比划比划,大概用什么数据结构,数组要开多大,有多少变量,用什么算法要首先想明白,此外,对于数据的规模要有一个概念(10000以上的规模貌似就不能用n*n的算法了),数据的边界值,特殊值需要不需要特殊处理,太乱了就写在纸上吧。慌乱之中编出的程序有很多的逻辑漏洞,debug起来很费力,所以编码前一定保持冷静和清醒。 第二,注意变量的名字和初始化的值。变量名字是为了让你的代码有比较好的阅读性,自己记忆起来比较方便。变量的初值直接与你的程序能否正确运行有关系,在变量初始化的时候,请注意你的标记是否跟数据的边界值重合。 其次,关于代码的缩进和模块化。据说老师是会拿到上机的代码的,因此请注意你的缩进格式和模块。但是这样做的目的不仅仅是为了取悦你的老师,在自己debug的时候也会十分的方便。利人利己。 再次,说点debug的事情,有人问devcpp不能调试什么的巴拉巴拉的。其实在调试的时候,可以将自己的中间变量输出,如果你的代码符合我说的上一点,那问题出在哪就会十分的明了。切忌提交的时候要把这部分加上注释或者直接去掉,不然就纠结了。 最后,如果你决定做一道题,就一定要将它ac,任何什么“我会了”,“我知道怎么做就行了”都没有ac了来的实在。 附赠一些我经常犯的错误: re: 数组是不是少了一位 下标越界情况是否排除?(比如a[-1]) pe: 空格是不是少了多了? Wa: 数据是多组还是一组 大小写 空格问题 OLE:最外重是否忘记了scanf()==xx 测试的//是不是没有加上 TLE:最外重是否忘记了scanf()==xx =与==的区别 输入的时候&别忘了!!! for()是否多加了; eg: for(); memset(a,0,sizeof(0)) (自己看看这是哪不对,给数组清零) 图的自环 重边问题 是不是有遗忘了的数组未初始化 数据定义的类型 再赠送九度OJ账号,上面有以上题目的答案: 账号:qoshi 密码:1234567 作为公共资源,请大家爱护,有的代码比较丑见谅了。 最后的最后: 上机练习的时候请跟你的好友一起练习,互相交流切磋进步很快!在此感谢迪米特和多多对我的帮助,谢谢! 希望每一位打算考研的朋友都认认真真踏踏实实走好每一步,坚持到最后,无论结果如何,请记住机会总会留给那些有准备的人!不抛弃不放弃!
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。