第1章 绪论
“数据结构”是计算机科学与技术、软件工程、信息**、信息管理与信息系统、信息与计算科学等专业的一门十分重要的专业核心基础课程,主要学习计算机中数据的组织方式、存储结构和处理方法。数据结构课程的学习将为计算机及相关专业的后续课程(如操作系统、编译原理、数据库原理、软件工程等)的学习打��基础。实际上,要编写一个“好”的程序,无非是要选择一个合理的数据结构和好的算法,而“好”算法的选择很大程度上取决于描述实际问题所采用的数据结构,因此要编写出“好”的程序,仅仅学习程序设计语言是不够的,必须很好地掌握数据结构的基本知识和基本技能。本章将概要地介绍数据结构课程的研究内容、基本概念和基本思想。
1.1 数据结构课程的研究内容。
数据结构起源于程序设计,随着计算机科学技术的发展,计算机应用领域不再局限于科学计算,而更多地应用于信息处理、智能控制、办公自动化等领域。计算机处理的对象由数值发展到字符串、表格、图形、图像、声音等数据,而且处理的数据量也越来越大。在程序设计中面对这样的数据,我们应如何来组织和处理它们呢?这就是“数据结构”课程需要研究的问题。
计算机解决问题时,一般要经过几个步骤:首先,要将实际问题抽象出数学模型,然后针对数学模型设计出求解算法,*后编写程序上机调试,直到求出*终结果。数值计算问题的数学模型一般可由数学方程或数学公式来描述。然而,对于非数值计算问题,例如图书资料的检索、人一机博弈、课程表编排、*短路径求解等问题,它们的数学模型无法用数学方程或数学公式来描述,而是要用线性表、树、图等数据结构来描述,并且要对这些模型设计相应算法来求解。数据结构就是研究计算机非数值计算问题中的数据对象以及它们之间的关系和操作算法的学科,具体主要包含三个方面的内容:①数据的逻辑结构;②数据的存储结构;③数据的操作算法。
……