[理科版] 第4章 算法与数据结构.pptVIP

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[理科版] 第4章 算法与数据结构.ppt

本章导读 学习完本章以后,你将能够: 了解算法的定义和特点 ; 了解并掌握如何描述算法 ; 了解数据结构的基本概念; 了解并掌握线性表、树结构等最常用的数据结构 ; 了解并掌握数据结构内在的逻辑关系,及在计算机中的存储表示和对它们进行各种运算的算法。 内容介绍 本章将介绍算法和数据结构的基本概念以及基本的数据结构,阐明数据结构内在的逻辑关系,讨论它们在计算机中的存储表示,介绍对它们进行各种运算的算法。本章主要内容如下: 4.1 算法的基本概念 4.2 数据结构 教学难点 4.1 算法的基本概念 算法是对特定问题求解步骤的一种描述。或者说,算法是为求解某问题而设计的步骤序列。 4.1.1 算法的定义 定义:算法是一组明确步骤的有序集合,它产生结果并在有限的时间内终止。 算法完全独立于计算机系统 例4-1 设计一个从一组正整数中找到最大整数 的算法。 ——“寻找最大值算法”(Find Largest) 分析: 该算法应该能从一组任意的整数中找出最大值,所以算法必须具有通用性并与整数的个数无关。 算法不可能只通过一个步骤就找到最大值。 算法设计: 算法改进: 算法泛化: 算法的重要特性: 有穷性:应在有限步骤内结束。 确定性:只要初始条件相同,就可得到相同的、确定的结果。 有效性:算法中的每一步操作必须是可执行的。 有零个或多个输入:一个算法可以有输入数据,也可以没有输入数据。 至少有一个输出:算法的目的就是求问题的解,求解的结果,必须向用户输出。 一个“好”算法除了正确性外,还应考虑以下几个方面: 效率高:主要指运行速度快和占用的存储空间小。 可读性:有助于人对算法的理解,以方便程序的调试和今后的维护; 健壮性:当输入数据非法时,算法也能作出适当反应,进行必要的处理,不致于造成错误的结果或引起系统崩溃。 4.1.2 算法的三种结构 顺序结构 选择结构 循环结构 顺序结构: 选择结构: 循环结构: 4.1.3 描述算法的工具 自然语言 流程图 N-S图 伪代码 统一建模语言(UML) 自然语言:自然语言是人类在日常生活中进行交流的语言。自然也可用于描述问题求解的算法。但用自然语言描述算法,存在着文字冗长、有二义性、表达不确切等不足之处。 流程图:流程图是描述算法过程的一种图形方法,具有直观、形象、易于理解等特点,应用广泛。 表4.1 流程图中常用图框列表 例4-3 计算1+2+…+100算法的流程图。 伪代码:伪代码是算法的一种类似英语的表示法。它是部分英语和部分结构化代码的组合。 4.1.4 算法的分类 算法涉及的范围很广,可包括:基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法。 算法可以分为三类: 有限的,确定性算法:这类算法在有限的一段时间内终止。他们可能要花很长时间来执行指定的任务,但仍将在一定的时间内终止。这类算法得出的结果常取决于输入值。 有限的,非确定算法:这类算法在有限的时间内终止。然而,对于一个(或一些)给定的数值,算法的结果并不是唯一的或确定的。 无限的算法:是那些由于没有定义终止定义条件,或定义的条件无法由输入的数据满足而不终止运行的算法。通常,无限算法的产生是由于未能确定的定义终止条件。本书不涉及这类算法。 4.2 数据结构 本节将介绍数据结构的基本概念以及线性表、树结构等最常用的数据结构,并阐明数据结构内在的逻辑关系,讨论它们在计算机中的存储表示,介绍对它们进行各种运算的算法。 4.2.1数据结构的基本概念及术语 数据结构(data structure)是指数据以及数据之间的关系。 术语 数据:是描述客观事物的数、字符以及所有能输入到计算机中并被计算机程序加工处理的符号的集合。数据是信息的载体,是对客观事物的描述。 数据元素:是数据的基本单位,即数据集合中的个体。 数据项:是具有独立意义的最小数据单位。 记录:有时一个数据元素由若干个数据项组成,在这种情况下,称数据元素为记录。 线性表:由若干条记录所组成的是线性表,称为文件。 数据对象:具有相同特性的数据元素的集合,是数据的子集。 结构:通常将数据元素间的这种关系称为结构。数据结构是带有结构特性的数据元素的集合。 数据的逻辑结构 只抽象地反映数据元素的结构,而不管其存储方式的数据结构称为数据的逻辑结构。 数据的存储结构 数据元素之间的关系在计算机中有两种不同的表示方法:顺序映象和非顺序映象,并由此得到两种不同的存储结构:顺序存储结构和链式存储结构。

文档评论(0)

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

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

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档