数据结构怎么自学
《数据结构》自学方法指导
来源:2006年5月29日发布16:56:48点击:
我们把数据结构称为计算机科学中的一门专业基础课,但它与其他基础课的区别在于它非常全面,不仅涉及计算机软件研究,包括操作系统、编译器等。但也与计算机硬件有相当大的关系,从编码理论到数据存储。所以可以说,数据结构是数学、计算机硬件、计算机软件之间的一门核心课程。所以这门课程《数据结构》对于学习计算机应用专业的其他后续课程有着非常重要的作用。但是由于课程内容繁多,很多内容都比较难。所以学好它并不容易。所以,一个好的学习方法尤为重要。判断一种学习方法好坏的关键在于它是否适合你。所以在学习这样一门课程的过程中,要不断的吸收、总结、归纳,结合自己的特点,为自己寻找一种有效的学习方法,这样才能事半功倍。摘要:本文结合《数据结构》课程的特点和以往的一些教学经验,总结归纳了一些学习方法上的建议,并分析了其中的重点和难点,希望能给广大学生带来启发,让他们读完之后学习更加有效。让我们一步一步向您解释:
首先,对学习这门课程的方法提出一些建议
1.因为这门课的算法是用类C语言描述的(我们会在后面的内容中介绍算法的基本概念)。类C语言是伪语言,语法很大程度上类似于C语言。所以需要掌握C语言和类C语言,这是学好数据结构的前提,所以要提前了解C语言和类C语言。
2.我来介绍一下这门课的基本内容:
数据结构课程主要包括以下内容:
(1)线性结构——包括线性表、堆栈、队列和数组等
(2)非线性结构——包括树、图等
(3)排序
(4)搜索
这些内容基本概括了整个数据结构课程的基本内容。在学习过程中,学生应该注意比较他们的联系和差异。需要指出的是,搜索和排序是日常工作中常见的操作,所以我们也在数据结构中专门的一章中向学生介绍。
3.我们需要知道整个数据结构课程的基本步骤,这样才能知道如何学习书中的每一个数据结构:
(1)逻辑结构——一种抽象的数学拓扑结构,其特点是独立于计算机的硬件结构
(2)基本操作——即在一定逻辑结构上定义的具体操作。每个逻辑结构对应一组操作。这里只需要考虑每个操作的功能,也就是只关心它做什么,不考虑如何实现。
(3)存储结构——即逻辑结构在计算机中的具体实现,是一种依赖于计算机硬件的结构。
(4)操作实现——操作只有结合特定的存储结构才能实现,所以它关注的是如何实现一个特定的操作,也就是让我们知道该怎么做。
(5)算法评估——对于不同的操作实现方式,对应的时间性能和空间性能是不同的。因此,我们需要从这两个角度来考虑和评价我们选择的运营实施方式。
上面列出的项目需要在每一个数据结构中进行描述,而每一个数据结构的这五个方面又是紧密相关的,不同的数据结构在某一个具体的方面也是相互关联的。所以在学习的过程中,要逐渐学会逐一比较,总结,找出两者的异同。这将有助于加深对整个过程的理解,并在我的脑海中逐渐形成一个完整的体系。
4.提高解题能力最好的方法是先了解课本上介绍的算法,大部分都是经典的。学生可以学习和关注这些算法的含义和实现过程,我们可以总结出一些好的基本解题思路、方法和技巧。
二、数据结构分析中的重点和难点:
1.关于数据结构的一些术语和名词的解释:
第一种是叫做数据的东西:它是客观事物的符号化表示。在计算机科学中,所有可以输入计算机并由计算机程序处理的符号统称为数据。还有数据元素,它是数据的基本单位,通常在计算机程序中被视为一个整体。有时,一个数据元素可以由几个数据项组成,它们是最小的不可分割的数据单元。和数据对象,后者是相同数据元素的集合和数据的子集。最后,我们给出了数据结构的定义:它是具有一个或多个特定关系的数据元素的集合。
在了解了数据结构的定义之后,我们再来看看数据结构研究的对象:数据元素。抽象地研究数据元素,需要对其进行分类。在本课程中,我们选择的分类标准是数据元素之间的关系,我们以后的课程将大致按照这个分类进行。根据数据元素之间的不同特征,通常有以下四种基本结构:
集合:结构中的数据元素除了属于同一个集合的关系之外,没有其他关系。
线性结构:结构中的数据元素之间存在一一对应的关系。