网站大量收购独家精品文档,联系QQ:2885784924

数据结构PPT教学课件-第1章_绪论参考.ppt

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

第一章 绪论 1.1 什么是数据结构 1.2 基本概念和术语 1.3 抽象数据类型的表示与实现 1.4 算法和算法分析 为什么要学习数据结构? 使用计算机是为了解决实际问题; 需要在计算机里建立起这个问题的求解模型: 1.1 什么是数据结构 计算机加工处理的对象由纯粹的数值发展到字符、表格和图像等各种具有一定结构的数据。 计算机解决问题的基本步骤: 从具体问题抽象出一个适当的数学模型; 设计一个解此数学模型的算法; 编出程序、进行测试、调整直至得到最终解答。 例1-1 图书馆的书目检索系统自动化问题 图书馆的各种书目的卡片给出了不同的图书查找方法:按书名查找、按作者查找等等…… 例1-2 计算机和人对奕问题 对奕的过程是在一定规则下随机进行的; 为使计算机能灵活对奕就必须对对奕过程中所有可能发生的情况以及相应的对策都考虑周全; 并且还应该能够预测棋局发展的趋势,甚至最后结局。 例1-3 多叉路口交通灯的管理问题 十字路口通常只需设红、绿两色的交通灯就可以保持正常的交通秩序; 多叉路口则需设几种颜色的交通灯才能既使车辆相互之间不碰撞,如下图1.3: 所有可能通行方向:A→B、 A→C、 A→D、B→A、B→C、B→D、D→A、D→B、 D→C、E→A、E→B、E→C、 E→D。用AB表示A→B,其余类推,是一个图中的结点。 有些方向不能同时行驶,在相应结点间画一条连线,如图,例如黄灯亮,则只有D→A、D→B可以通行。 把图中结点分组,使得有边相连的结点不同组,同组的行驶方向互不冲突,可以同时行驶。 问题化为:哪些结点可以同组,共分为多少组? 一个显然解:每个方向独立作为一个组。 进一步目标:分组最少(同时通行方向多)。 交通信号灯问题转化为对图顶点着色问题: 要求对图的每个顶点着一种颜色; 并且要求有线相连的两个顶点不能有相同颜色,而总的颜色数尽可能少。 图的顶点着色问题 有线相连的两个顶点不能有相同颜色,而总的颜色数尽可能少。 结论 在应用程序中涉及到各种各样的数据,如何在计算机中组织、存储、传递数据,需要讨论它们的归类及它们之间的关系,从而建立相应的数据结构,依此实现软件功能。 综上,描述这类非数值计算问题的数学模型不是数学方程,而是树、表和图之类的数据结构。 因此从广义上讲,数据结构描述现实世界实体的数学模型及其上的操作在计算机中的表示和实现。 关于数据结构、算法和程序设计 程序设计:为计算机处理问题编制一组指令集 算法:处理问题的策略 数据结构:问题的数学模型 1.2 基本概念和术语 数据(Data):是信息的载体,是描述客观事物的数、字符、以及所有能输入到计算机中,被计算机程序识别和处理的符号的集合。 数值性数据(整数、定点数、浮点数) 非数值性数据(文字数据) 数据元素(Data Element):数据的基本单位。在计算机程序中常作为一个整体进行考虑和处理。 有时一个数据元素可以由若干数据项(Data Item)组成。数据项是具有独立含义的最小标识单位。 数据元素又称为元素、结点、记录。 1. 数据元素和数据项 数据项(Data Item)是数据不可分割的最小单位 数据对象 (data object):具有相同性质的数据元素的集合。 整数数据对象 N = { 0, ?1, ?2, … } 字母字符数据对象 C={ ‘A’, ‘B’, ‘C’, … ‘F’ } 数据结构(Data Structure):相互之间存在一种或多种特定关系的数据元素的集合。记为:Data_Structure = {D, S};其中,D 是某一数据对象, S 是该对象中所有数据成员之间的关系的有限集合。 数据结构的两个层次 从例1-1(图书馆的书目检索系统自动化问题)、例1-2(计算机和人对奕问题)、例1-3(多叉路口交通灯的管理问题)可以看到,在任何问题中,数据元素都不是孤立存在的,而是在它们之间存在着某种关系,这种数据元素相互之间的关系称为结构(Structure)。 数据结构包括逻辑结构和物理结构两个层次: 逻辑关系:数据元素间的关联方式,或称“邻接关系”。 逻辑结构:数据元素间逻辑关系的整体,抽象反映数据元素的逻辑关系。 2. 数据的(逻辑)结构 四个基本的数据逻辑结构 集合:结构中的数据元素之间除了 “同属于一个集合”的关系外,别无其 他关系; 线性结构:结构中的数据元素之间 存在一个对一个的关系; 树形结构:结构中的数据元素之间 存在一个对多个的关系; 网状结构(图状结构):结构中的 数据元素之间存在多个对多个的关系。 数据结构的形式定义 数据结构是一个二元组?Data_Structure = (D,S) D是数据元素的有限集(或者是“结点”,可能还含有“数据项”或“数据域”) ; S是D上

文档评论(0)

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

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

1亿VIP精品文档

相关文档