1
算法与数据结构  C语言版
1.3.1.2 1.1.2 如何学习数据结构
1.1.2 如何学习数据结构

1.“数据结构”课程的地位

“数据结构”课程较系统地介绍了软件设计中常用数据结构以及相应的存储结构和算法,系统介绍了常用的查找和排序技术,并对各种结构与技术进行分析和比较,内容非常丰富。“数据结构”涉及多方面的知识,如计算机硬件范围的存储装置和存取方法,在软件范围中的文件系统、数据的动态管理、信息检索,数学范围的集合、逻辑的知识,还有一些综合性的知识,如数据类型、程序设计方法、数据表示、数据运算、数据存取等,是计算机专业一门重要的专业技术基础课程。

“数据结构”的内容将为“操作系统”“数据库原理”“编译原理”等后续课程的学习打下良好的基础(如图1-1所示),“数据结构”课程不仅讲授数据信息在计算机中的组织和表示方法,同时也训练高效地解决复杂问题程序设计的能力,因此“数据结构”是数学、计算机硬件、计算机软件三者共同的一门核心课程,“数据结构”课程是计算机专业提高软件设计水平的一门关键性课程。

图1-1 “数据结构”与其他课程的关系

2.“数据结构”课程的学习特点

“数据结构”课程教学目标要求学生学会分析数据对象特征,掌握数据组织方法和计算机的表示方法,以便为应用所涉及数据选择适当的逻辑结构、存储结构及相应算法,初步掌握算法时间空间分析的技巧,培养良好的程序设计技能。

“数据结构”的学习过程是进行复杂程序设计训练的过程。技能培养的重要程度不亚于知识传授。数据结构从某种意义上说,是程序设计的后继课程。如同学习英语一样,学习英语不难,学好英语不易,要提高程序设计水平必须经过艰苦的磨炼。因此,学习数据结构,仅从书本上学习是不够的,必须经过大量的实践,在实践中体会构造性思维方法,掌握数据组织与程序设计的技术。

3.“数据结构”课程的学习方法

在学习数据结构的时候,采用“323”模式来学习,脉络会非常清楚。所谓“323”指的是3种数据结构、2种存储方法、3种重要算法。3种数据结构即线性结构、树结构、图结构;2种存储方法即顺序存储和链式存储;3种重要算法即查找、插入、删除,如图1-2所示。

图1-2 数据结构模式

我们可以参看书中目录,脉络就会非常清晰。第1章即数据结构基本概念的介绍,第2~5章线性结构、第6章树、第7章图是重点章节,第8章和第9章排序和查找是重要的数据运算技术,也是非常重要的。