《数据结构(C语言描述)》第1篇学习数据结构的意义.ppt

《数据结构(C语言描述)》第1篇学习数据结构的意义.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
21世纪高等院校规划教材 数据结构(C语言描述) ISDN 7-5084-3301-7 斯庆巴拉 主编 中国水利水电出版社 第一章 学习数据结构课程的意义 学习重点 掌握学习本课程的意义 掌握本课程的主体框架和讨论范围 掌握如何对算法进行描述和分析 1.1 实例:高校选修课程管理 1.2 数据结构的主要内容 1.3 算法和算法分析 本章总结 1.1 实例:高校选修课程管理 1.1.1 问题描述 1.1.2 问题的分析 1.1.3 学习本课程的意义 1.1.1 问题描述 表1-1是一所学校学生选修课程的选修情况登记表。要求用计算机来完成对学生选修课程的全程管理。 通常必备的功能有登记,修改、查询和打印等。在本例中重点完成查询功能。 1.1.2 问题的分析 利用计算机解决实际问题的步骤: 第一步:从具体问题抽象出一个适当的数据模型。 第二步:进行算法设计。 第三步:实现抽象数据类型定义,即从编程语言的角度确定抽象数据类型的存储形式和确定抽象数据类型中每一种操作的具体实现算法。 第四步:编制相应的程序代码并进行调试。 1.1.3 学习本课程的意义 数据结构作为一门独立的课程在国外是从1968年开始设立的 。 瑞士著名计算机科学家N.Wirth提出的著名公式“程序=算法+数据结构”。 数据结构是一门介于数学、计算机硬件和软件三者之间的核心课程。 用一句话概括:本课程就是从实际问题抽象出数据类型的手段。主要研究计算机所处理的数据对象、对象间存在的关系及进行的各种操作。 1.2 数据结构的主要内容 1.2.1 基本概念和术语 1.2.2 数据结构定义 1.2.3 逻辑结构的表示方法 1.2.1 基本概念和术语 数据是对客观事物的符号表示,是一种信息的载体,是所有能输入到计算机中并被识别、存储和加以处理的信息的总称。 数据元素是数据的基本单位。一个数据元素也可以由若干个数据项组成 。 数据对象是性质相同的数据元素的集合,是数据的一个子集。 数据类型是对计算机中表示的数据对象、对象特征及该数据对象上的一组操作的描述。 抽象数据类型是指一个数学模型及定义在该数学模型上的一组操作。定义取决于它的逻辑特性,与其在计算机内部如何表示(存储)和实现无关。 1.2.2 数据结构定义 数据结构是指相互间存在一种或多种特定关系的数据元素的集合。 数据?具有相同属性的数据元素的集合; 结构?数据元素间存在的一种或多种关系。 对一个给定的数据结构进行分析时,一般从它的逻辑结构、存储结构及对数据元素所进行的操作三个方面进行讨论。(本课程的主要讨论点) 1.2.3 逻辑结构的表示方法 二元组表示法 表示形式为: D=(K,R) 其中,K={a1 , a2 , … , an } ,为数据元素的集合 R={r1 , r2 , … , r m } ,为元素之间关系的集合 r1={x,y | 其中,x,y∈K } … x , y 序偶表示:元素x和元素y之间存在关系,并且称元素x为元素y的前驱,元素y为元素x的后继。如果元素x既是元素y的前驱,也是元素y的后继,既x,y且y,x,则用(x,y)形式表示。 图形表示法 用圆圈来代表数据元素,用带箭头的连线来表示元素之间的关系,如图所示。 1.3 算法和算法分析 1.3.1 算法定义 1.3.2 算法分析 1.3.1 算法定义 算法是对特定问题求解步骤的一种描述,是一组指令的有限序列,其中每一条指令都代表解题过程中的一个或者多个操作。 算法特点: 有穷性、确定性、可行性、输入、输出 算法描述可以有多种方式,如:用流程图描述、用自然语言描述、还可用数学语言或特定的符号进行描述。本书中所有算法都是用C语言来进行描述 。 1.3.2 算法分析 算法的设计要求如下: 正确性 可读性 健壮性 效率与低存储量的需求 其中,效率指的是算法执行的时间。存储量需求指的是算法执行过程中所需要的最大存储空间,通常主要考虑算法所需的辅助存储空间。 这四个设计要求中最主要的是算法的执行时间和执行时所占的存储空间大小。 本章总结: 本章介绍了学习数据结构课程的意义、本课程的主题框架及相关内容和如何对算法进行评价。 数据结构主要研究计算机所处理的数据对象、对象之间存在的各种关系及进行的各种操作,是用计算机来解决实际问题与编写相应程序两者之间的纽带。 数据结构从定义上可以理解为数据+结构。其中,数据指的是所要处

文档评论(0)

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

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

1亿VIP精品文档

相关文档