算法与数据结构-第1章题稿.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法与数据结构 主 讲: 高 慧 电 话:E_mail: spring0314@163.com 课程的重要性 数据结构是计算机相关专业的一门重要的专业基础课,介于数学、计算机硬件和计算机软件之间,是编译原理、操作系统、数据库原理、人工智能等课程的基础; 数据结构技术也广泛应用于信息科学、系统工程、应用数学以及各种工程技术领域; 计算机程序设计的重要理论基础 程序 = 算法 + 数据结构 课程目的 能够分析研究计算机加工的对象的特性,获得其逻辑结构,根据需求,选择合适的存储结构及其相应的算法 学习并掌握一些常用的算法 复杂程序设计的训练过程,要求编写的程序结构清楚和正确易读 初步掌握算法的时间分析和空间分析的技术 基本安排 学时: 66学时,理论50 + 上机16; 基本要求: 上课认真听讲; 课下阅读教材,认真、独立完成书面作业; 多写算法,多练习,重视上机实践; 考试: 平时成绩30% + 卷面成绩70%; 平时成绩包括考勤、作业和上机; 理论和上机课共缺席3次及以上者取消考试资格; 教 材 必修书: 数据结构(C语言版)第3版 邓文华等 清华大学出版社 数据结构实验与实训教程(第3版) 邓文华等 清华大学出版社 参考书: 数据结构(C语言版)(严蔚敏) 清华大学出版社 算法与数据结构(陈守孔)机械工业出版社 C程序设计(谭浩强) 清华大学出版社 网络资源: 烟台大学计算机学院精品课程 第1章 绪论 1.1 从问题到程序 1.2 有关概念和术语 1.3 算法及算法分析 1.4 关于数据结构的学习 1.1 从问题到程序 例1.1 图书信息检索系统 例1.1 图书信息检索系统 计算机处理的对象:表 数据间的关系:一对一的线性关系 施加于对象上的操作:查询、插入、删除等 例1.2 人机对奕问题 例1.2 人机对奕问题 例1.3 教学计划编排问题 课程先后关系的图形描述形式 例1.3 教学计划编排问题 结 论 数据结构是一门研究非数值计算的程序设计问题中计算机的处理对象以及它们之间关系和操作的学科。 三要素:对象、关系及操作 学习数据结构的目的之一是将实际问题中涉及的处理对象在计算机中表示出来并对它们进行处理。 1.2 有关概念和术语 三个层次的概念:数据、数据元素、数据项 1. 数据:是所有能被输入到计算机中,且能被计算机处理的符号的集合。包括数值数据和非数值数据。 2. 数据元素: 是数据集合中的一个“个体”,是数据的基本单位。不同的条件下可称为元素、结点、顶点、记录等,通常作为一个整体考虑和处理。 如:图书信息表中的每一条记录 3. 数据项: 组成数据元素的有特定意义的最小单位 ,不可分割 如:图书记录中的图书分类号、书名、作者等 4. 数据结构 数据以及数据元素相互之间的联系 互相之间存在一种或多种特定关系的数据元素的集合 带结构的数据元素的集合 逻辑结构 数据结构中所说的“关系”实际上是指数据元素之间的逻辑关系,又称此为逻辑结构。 根据数据元素之间关系的不同特性,常见的逻辑结构 集合结构、线性结构、树型结构和图状结构 4种常见的逻辑结构 数据结构的二元组表示 形式化定义:数据结构是一个二元组 Data_Structure =(D,R) 其中,D是数据元素的集合,R是D上关系的集合 例1.4: DS=(D,R) D={a,b,c,d,e,f,g} R={a,b,a,c,a,d,c,e,c,f,d,g} 存储结构 存储结构(物理结构) 数据的逻辑结构在计算机存储器中的存储表示(或映像) 包括数据元素的存储表示以及数据元素之间关系的表示 常见的存储结构 顺序存储结构 链式存储结构 顺序存储结构:借助元素在存储器中的相对位置表示数据元素之间的关系(逻辑相邻,物理位置也相邻) 链式存储结构:借助指示元素存储地址的指针(Pointer)表示数据元素之间的逻辑关系(逻辑相邻,物理位置不一定相邻) 【例】 {a1,a2,…, an} 数据结构的三要素 5. 数据类型 一个值的集合和定义在此集合上的一组操作的总称 规定了在程序执行期间变量或表达式所有可能取值的范围以及在这些值上允许进行的操作。 如:int 整型数据类型 所有整数的集合(在16位计算机中为-32768~32767的全体整数)和相关的整数运算(如+、-、*、/等)。 引入数据类型的目的:使用与实现分离 6. 抽象数据类型 Abstract Data Type,简写为ADT 一个数学模型以及定义在该模型上的一组操作 抽象数据类型的定义取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关 抽象数据类型的三元组表示:(D,S,P) 1.

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档