13 学习“数据结构”课程的意义.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
13 学习“数据结构”课程的意义

第1章 绪  论 本章主要介绍数据结构中的一些常用术语、线性存储结构和链式存储结构等常用数据结构的表示以及C语言描述算法的基础、算法的时间和空间复杂度的分析等内容。 (1)数据结构的基本概念。 (2)数据的逻辑结构、存储结构。 (3)算法的概念及特点。 (4)算法的时间复杂度分析。 (1)抽象数据类型(ADT)的定义与使用。 (2)算法的空间复杂度分析。 数据结构主要研究数据对象的关系及其在计算机中的表示和操作。程序设计中,对不同逻辑结构的数据,应选择适合其特点的存储结构和相应的操作算法。 从提出一个实际问题到计算机解出答案一般需要以下步骤: (1)从实际问题中抽象出一个数学模型。 (2)设计解此数学模型的算法。 (3)编制程序,进行调试、测试,直到得出正确的结果。 在进行项目开发和程序设计的过程中,许多问题都需要只抽象出一些模型,然后针对这些模型来解决问题。下面来看具体示例。 例1-1  姓 名 学 号 成 绩 李丹丹 2010026240101 95 马小丽 2010026240102 88 吴志平 2010026240103 93 … … … 例1-2 计算表达式 (pow(1.2,4)+sin(1.125))/((3+8)×12)的值。 当通过键盘输入上述算术表达式后,要求计算机能给出正确的计算结果。为了能够正确地完成计算,必须要求计算机能够识别上述表达式是一个包含加法(+)、减法(-)、乘法(×)、除法(/)和函数的算术表达式,从而达到对输入串的计算类型的识别,进而根据不同的计算类型做相应的处理。因此,需将表达式(pow(1.2,4)+sin(1.125))/((3+8)×12)分成两个独立的子表达式(pow(1.2,4)+sin(1.125))和((3+8)×12),只要分别计算出了二者的值,那么表达式(pow(1.2,4)+sin(1.125))/((3+8)×12)的值也就很容易计算出来了。上述表达式的计算过程如图1.1所示。 图1.1 表达式的计算过程 例1-2中表达式的计算过程用一种图示的方式表示了出来,计算顺序为先左后右、自底向上逐步进行。而且从形状看,它和一棵倒置树的结构极其相似。计算过程也是类似的,底层计算的结果传给上一层结点,直至到达最上面的结点(称为树根,root),得到计算结果。图1.1表示的是一种被称作树的数据结构,它形象地表示了计算结点之间的逻辑关系。 例1-3 排课问题。 每名学生在入学后都要学习一系列的课程,有的课程需要另一门课程作为先行课。下面以软件专业为例列出课程关系表,如表1.2所示。在12门课程中,有基础课和专业课,怎样安排才能合理呢?当然要将一门课程安排在其先行课之后,这是一种特殊的排序问题。图1.2所描述的数据模型是表1.2所列出的课程关系的数据模型,它表示的是一种被称为图的数据结构。 表1.2 课程关系表 课 程 编 号 课 程 名 称 先 行 课 C1 程序设计基础 C2 离散数学 C1 C3 数据结构 C1,C2 C4 汇编语言 C1 C5 语言设计和分析 C3,C4 C6 计算机原理 C11 C7 编译原理 C3,C5 C8 操作系统 C3,C6 C9 高等数学 C10 线性代数 C9 C11 普通物理 C9 C12 数值分析 C1,C9,C10 图1.2 课程关系图 综上3个示例可见,描述这类非数值计算问题的数学模型不再是数学方程,而是如表、树、图之类的数据结构。 1.1.2 基本术语 1.数据(Data) 数据是信息的载体,是所有能输入到计算机中并被计算机识别、存储和处理的符号的集合。数据就是计算机化的信息,是一种计算机符号的特定表示形式。早期计算机主要应用于数值计算,数据量小且结构简单,数据只包括整型、实型和布尔型,当时程序工作者把主要精力放在程序设计的技巧上,而并不重视组织数据。随着计算机软硬件的发展和应用领域的不断扩大,非数值运算处理在计算机应用领域所占的比例越来越大。现在的数据不单纯是数值,还包含文本、声音和图像等许多非数值数据。多种信息通过编码而被归于数据的范畴,在大量复杂的非数值数据处理过程中,数据的组织显得越来越重要。 2.数据元素(Data Element) 数据元素简称元素,是数据的基本单位,是数据集合的个体,在计算机中通常作为一个整体进行考虑和处理。对于二维表格,每行信息就是它的一个数据元素。每个数据元素由若干个数据项组成,此时的数据元素通常称为记录(Record)。如表1.1中的数据,每一个学生的记录就是一个数据元素;对于一个字符串数据来说,每个字符就是它的数据元素;对于一维数组来说,每个下标所对应存储单元的值就是它的数据元素。 3.数据项(Data Item) 数据项是数

文档评论(0)

wujianz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档