数据结构的概念.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 概论 ? 1·1 数据结构的概念 ? 一、基本概念和术语 ??????? 数据(Data):是指所有能输入到计算机中并被计算机程序处理的符号的总称。是计算机加工的“原料”。 ??????? 数据元素(Data Element):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。有些情况下,数据元素也称为元素、结点、顶点、记录。有时数据元素可以由若干数据项(也称为字段、域、属性)组成,数据项是数据的有独立含义的最小标识单位。 ??????? 数据类型:(Data Type):是一个值的集合和定义在这个值集上的所有的操作。例如,整数类型。数据类型可分为:原子数据类型和结构数据类型。原子类型的值是不可分解的,结构类型的值是由若干成分按某种结构组成的。 二、??? 数据的三个层次 数据是计算机加工的对象,是数据元素的集合; 数据元素是数据的基本单位,常称为结点、元素、记录等,作为一个整体出现; 数据项是数据的最小不可分割的单位。 三、什么是数据结构(Data Structure):数据之间的相互关系,即数据的组织形式。包括以下三方面: ①?? 数据元素之间的逻辑关系,也称为数据的逻辑结构; ②?? 数据元素及其关系在计算机存储器内的表示,称为数据的存储结构; ③?? 数据的运算,即对数据施加的操作。 四、数据的逻辑结构分两类:线性结构和非线性结构。(有的教材称四种结构: 集合、线性结构、树形结构、图形结构或网状结构) 五、数据的存储结构:数据结构在计算机中的表示(又称映象)称为数据的物理结构,又称存储结构:数据元素及其关系在计算机存储器的表示。用于表示数据元素的位串称之为元素或结点,用于表示数据项的位串称之为数据域。算法的设计取决于选定的数据逻辑结构,而算法的实现依赖于采用的存储结构。数据有四种存储结构: ① 顺序存储结构:把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。通常顺序存储结构是借助于语言的数组来描述的。 ② 链式存储结构:不要求逻辑上相邻的结点物理上也相邻,结点间的逻辑关系是由附加的指针字段表示的,通常要借助于语言的指针类型来描述。 ③ 索引存储方法 ④ 散列存储方法 六、《数据结构》课程及其重要性 1968年美国克努特教授开创了数据结构的最初体系。 数据结构是一门综合性的专业课程,是一门介于数学、计算机硬件、计算机软件之间的一门核心课程。是设计和实现编译系统、操作系统、数据库系统机其他系统程序和大型应用程序的基础。 ? 1·2 为什么要学习数据结构 ? 一、???? 用计算机解题的过程 具体问题—数学模型—算法—程序。然而在现实社会中存在着许多非数值计算问题,其数学模型难以用数学方程描述。 二、???? 几个例子说明数据结构研究的内容 1 学生成绩表的管理 图书馆的书目检索自动化问题----计算机处理的对象之间存在着线性关系,称为线性的数据结构。 电话号码查询问题----按顺序查找和按索引表查找效率不同。 2?????? 人机对奕问题(game playing) 计算机处理的对象是一个个格局。所有可能出现的格局是一棵倒置的树。计算机能与人对奕,是因为人们将博奕规则存入计算机,利用高速运算,早期chess 4.6程序能每步查找400000——500000个结点,而心理学家认为,人类选手只能预见50步。 3?????? 田径赛的时间安排问题----数学模型是图的数学结构。 综合以上例子,描述这类非数值计算问题的数学模型不再是数学方程,而是诸如表、树和图之类的数据结构。因此,简单说,数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等等的学科。 ? 1·3 算法描述 ? 一、算法(Algorithm) 算法是对特定问题求解步骤的一种描述,它是指令的有限序列。每条指令表示一个或多个操作。算法具有五个重要特性:有穷性、确定性、可行性、输入、输出。 二 、算法设计的要求 正确性、可读性、健壮性和效率与低存储量要求 三 、算法的描述形式: 自然语言表示法;伪代码表示法;流程图表示法;结构化流程图(N—S图)表示法;PAD图表示法。 四 、本书算法用C语言描述。 1?????? 函数的形式 [函数类型] 函数名([函数参数表]) [形式参数说明] { 内部语句说明; 执行语句; } 2?????? 条件语句的两种形式 3?????? 循环语句的三种形式 4?????? 情况语句 5?????? 赋值语句 6?????? 输入、输出语句 7?????? 注释形式 ? 1·4 算法分析 ? 一 、算法的评价 时间度量;空间度量;易理解,易编制,易调试。 二 、举例说明算法复杂度的计算 算法时间是由控制结构

文档评论(0)

yan666888 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档