浅谈数据结构的学习方法
查看(1939) 回复(0) |
|
lyh2006
|
发表于 2010-08-02 13:11
楼主
不少同学在刚开始学习数据结构的时候觉得数据结构很难学。这里,我将我学习数据结构的
方法与大家分享,希望能对大家有所帮助。 一、不要过分关注数据结构的语言实现。 首先让我们来看看数据结构的定义:数据结构是存在一种或多种特定关系的数据元素的集合。由数据结构的定义可以得知,数据结构并不是“某种语言的”数据结构,它是和具体的语言无关。一些同学在学习数据结构的时候往往不自觉地把数据结构与某种计算机程序设计语言(比如C语 言)联系起来。比如,说到数组,大家的第一反应很可能是“[ ]”符号,说到链表,也许最先联想到的是“*”符号。虽然在实际应用中,数据结构总是要由某些语言来实现,但在学习数据结构的过程中,如果过分关注于数据结构的语言实现,我们的思想将被束缚在这些语言的语法规范中。我们应该关注的是,为什么要用这种数据结构,而不用那种;在什么情况下用什么样的数据结构;几种数据结构的联系和区别,优点和不足是什么……诸如此类的问题。计算机程序设计语言只是数据结构的实现方式,这种方式往往是多变的,因为计算机程序设计语言正在不断地更新换代。然而,数据结构作为框架和思想,是相对稳定的。我们学习数据结构,重要的是学习数据结构中的框架、原理和思想,只有理解和掌握这些,才能够很好地运用数据结构来解决实际问题。 二、重视实践 这是一个老生常谈的问题,并不仅仅是在学习数据结构的时候需要动手实践。正如前面提到的,在实际应用中,数据结构总是要由某些语言来实现的。计算机科学是一门应用科学,我们掌握的理论知识,只有应用到实际中才能体现出价值,数据结构也是这样。学习并掌握数据结构中的框架、原理和思想,目的是为应用打好扎实的理论基础。我们不能过分关注数据 结构的语言实现,但也不能完全不动手实践。动手实践有两个意义:一是验证我们的想法是否正确。比如,在设计一个新的数据结构时,我们脑中产生的数据结构设计思路并不一定是完美的,而往往是不完备,甚至是错误的。“实践是检验真理的唯一标准”,我们需要通过用程序实现我们的想法来验证我们的想法的正确性。动手实践的第二个意义是培养我们完整、彻底地解决问题的能力。我们在思考的时候,往往只是粗略地解决了某个问题,没有细化(其实是无法细化)。 在动手实践的过程中,我们会遇到很多细节问题,这些是我们在思考的时候无法考虑到的,但又是解决问题所十分必要的。因此,动手实践的过程,实际上是培养我们完整、彻底地解决问题能力的过程。 综上所述,只是将理论与实践紧密结合,才能学好数据结构 |
回复话题 |
||
上传/修改头像 |
|
|