当前位置:新励学网 > 考研教学 > 请问计算机零基础考研怎么复习数据结构

请问计算机零基础考研怎么复习数据结构

发表时间:2024-07-09 17:14:01 来源:网友投稿

考研是选拔性考试,对知识点的各种细节的掌握以及深入理解要求非常高。如果仅仅是熟悉一下各种数据结构的实现以及怎么使用(比如STL),而不去抠定义以及各种细节来在规定的时间内把题目做对的话,50天理解能力强的人确实可以过两遍。但是对于考研来说这种不以应试为目的的过两遍,没有任何意义。

如果只有50天的话,要达到考研408中数据结构需要的水平,我个人觉得肯定是不够的,首先教材是严蔚敏的数据结构(C描述),这本书难度比较大,而且写的非常专业,光吃透这本教材没有个两三遍是很难深入理解的,我当初第一遍花了一个半月,然后配合做题+第二遍,远远超过了50天,我估计100天都有。考试的时间有限,题量还不小,那些常见的算法,比如二叉树的非递归遍历算法,求宽度,高度,各种排序算法,堆排序的调节算法,AVL的各种旋转算法,KMP中求Next数组的算法,等等起码要能熟练而且迅速的写出来代码才行吧。如果一个快排你还得回忆半天,那你怎么写的完题目咯。鉴于题主不考408,那么你们数据结构自主命题的难度到底是什么样的,我建议你买一些历年真题回来对比着看一下,配合考纲,不考的不用复习,有针对性的着重看考过的知识点。如果不是很难的话一些比较难的部分就可以不深究,比如图的算法的实现,线索二叉树的算法,AVL树等等,但原理还是要深刻理解的。然后学了C的话,并不意味着不需要学链表、串、排序了,我不知道你C是用的哪本教材,如果仅仅只是学C语言的话,确实是会附带着讲一点数据结构的知识,但是都太浅了,面太窄了。比如串C语言中可能就只是学一点字符串处理?严蔚敏数据结构教材中讲的是广义的串,链表的话,也是先讲顺序表,而不是链表,这是一个子集的关系。排序的话其实冒泡排序,快排这些都是内部排序,外部排序C语言应该是不会学的。再高效的学习方法,最终目的都是深入理解并灵活运用所学的东西,这种东西是走不了捷径的,只能理解并非常熟悉才行。

对于C语言的要求不会很高,我给你归纳一下:

1.基本语法要非常熟悉,比如函数结构,循环结构,switch,struct,typedef,static等等。

2.熟练使用指针,要会用malloc()以及free()还有sizeof(),并且理解原理以及工作过程

3.熟练使用函数递归调用,并且理解其思想,因为很多数据结构本身就是递归定义的,比如二叉树,这种递归的思想很重要,而且要具备将递归转化为非递归的能力,考试过程中,如果能熟练使用递归的话能在算法设计题上省下大量的时间,因为递归实现的话代码量将大大减少。

4.最好了解一下C++的引用(&),因为严蔚敏数据结构这本教材中大量使用了&(passbyreference)以及*&(传指针引用)来进行参数传递,其实在C++中引用是用指针来实现的,并不是什么新东西。

最后的建议:

实在要在50天内解决数据结构的话,每天起码6个小时放在数据结构上吧。

多做题多动脑子,多手写代码,数据结构不能死记硬背,一定要理解算法原理,灵活运用,不变应万变。在此:我祝您好运!

(望采纳)

免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。

如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!