数据结构(Java语言描述·微课版)
上QQ阅读APP看书,第一时间看更新

1.2 数据结构概述

1.2.1 学习数据结构的必要性

数据结构是计算机专业中的一门专业基础必修课,凡是设置计算机专业的院校几乎都开设了此课程。此外,一些常见的数据结构已经渗透到计算机专业的各门课程中,例如“操作系统”课程中涉及“队列”和“树”数据结构的使用,进程调度的原则是从就绪队列中按照某种原则选取一个进程执行;在文件管理中,文件一般按照“树”形结构进行存储和处理。

瑞士著名计算机科学家尼古拉斯·沃斯(N.Wirth)提出了著名公式“程序=算法+数据结构”,表明了数据结构在程序设计中的重要地位。在计算机发展的初期,人们使用计算机的目的主要是处理数值计算问题。由于当时所涉及的运算对象是简单的整型、浮点型或布尔型数据,所以程序设计者的主要精力都集中在程序设计技巧上,而无须重视数据结构。随着计算机应用领域的扩大以及软硬件的发展,非数值计算问题显得越来越重要。这类问题涉及的数据结构更为复杂,数据元素之间的相互关系一般无法用数学方程式直接描述。数学分析和计算方法在解决此类问题时常显得力不从心,而设计出合适的数据结构才能有效地解决问题。

因此,掌握好数据结构的知识,对于提高解决实际问题的能力将会有很大的帮助。实际上,一个“好”的程序无非是选择一个合理的数据结构和好的算法,而算法的好坏很大程度上又取决于描述实际问题所采用的数据结构是否合理。所以,要编写出好的程序,仅仅学习计算机语言是不够的,必须扎实地掌握数据结构的基本知识和基本技能。