如何学好数据结构?

数据结构是高校计算机专业学生的一门非常重要的课程。无论是以后算法思想的渗透,还是工作中程序代码的处理,都离不开数据结构的影子。但是由于数据结构的知识越来越抽象,很多人学习起来很头疼。其实没必要,数据结构的学习自然有其对应的方法。

首先,如果你只是单纯的想学好数据结构,而不是为了应付考试或者考研,那么就不要再去背诵那无数的空间复杂度和时间复杂度了。你只需要学习一个简单的方法来区分两者,你只需要知道哪个复杂度更高,哪个复杂度更低,因为具体的复杂度在现实中很少用到。

其次,数据结构从名字就可以理解。我们主要研究一种结构,所以任何结构的简单解释和定义都是很抽象的。所以,无论是简单的链表队列,还是复杂的二叉树和图,都需要把每个结构可视化,把每个结构画出来,这样可以很容易的帮助你理解结构的原理。如果插入、删除、排序等。在结构的基础上,这些图像也可以帮助你直观地表现出来。

最后,要熟练掌握各个结构的应用。在各种oj平台刷题,如果你的学校有刷题平台是最方便的。在刷题过程中,尤其需要对数据结构的每个知识点进行专门的章节训练,培养他们在编程过程中使用数据结构的习惯性思维,掌握何时使用平衡二叉树、hash、graph等。

还有一点,想学好数据结构,一门好的课程必不可少。如果大学老师讲得足够好,你完全可以体会到数据结构的美丽风景。如果你想自学的话,我推荐浙大的陈悦奶奶和清华的邓俊辉老师,这两位老师讲的都很透彻,也很通俗易懂。