计算机科学第5章 数据结构与算法.ppt

计算机科学第5章 数据结构与算法.ppt

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

计算机学科导论 第5章 数据结构与算法 本 章 教 学 目 的 理解数据结构的概念,理解数据结构的逻辑和存储结构 理解算法的概念和算法的基本特性,了解算法复杂度的度量方法 理解线性数据结构,掌握栈和队列、串和数组等典型线性数据结构 了解非线性的数据结构,了解树、二叉树和图等典型非线性数据结构 理解排序、查找的概念,了解排序、查找的典型算法及其比较分析方法 理解递归的概念,了解递归的实际应用 本 章 教 学 内 容 数据结构概述 线性结构 非线性结构 基本算法 递归 本 章 学 习 重 点 数据结构的基本概念 算法的描述、流程图的使用以及算法的复杂度的衡量 顺序存储和链式存储的方法 栈、队列、串和数组的概念和用法 二叉树数据结构 查询、排序和递归算法 第一节 数据结构概述 5.1 数据结构概述 5.1.1 数据结构 数据是对客观事物的符号表示,是信息的载体,它能够被计算机识别、存储和加工处理,是计算机加工处理的对象,它可以是数值数据,也可以是非数值数据。数值数据是一些整数、实数或复数,主要用于工程计算、科学计算和商务处理等;非数值数据包括字符、文字、图形、图像、语音等。 数据元素是构成数据的基本单位。对于复杂事务的数学描述往往需要多个组成成分,每个基本的成分称为一个数据元素。有时,一个数据元素可以细分为一组数据项,数据项是数据中不可再分割的最小单位。研究具体问题时可以根据实际需要,确定数据的组成,即需要有多少数据元素,具体的数据元素是否再细分为数据项。 4.1 数据结构概述 4.1.1 数据结构 数据结构则是指互相之间存在着一种或多种关系的数据元素的集合。在任何问题中,数据元素之间都不会是孤立的,它们之间总是存在着这样或那样的关系,这种数据元素之间的关系称为结构。 根据数据元素间关系的不同特性,通常有下列四类基本的结构: 集合结构。在集合中,各数据元素间的关系是“属于同一个集合”。集合是元素关系极为松散的一种结构,各元素间没有直接的关联。 线性结构。该结构的数据元素之间存在着一对一的关系。 树型结构。该结构的数据元素之间存在着一对多的关系。 图形结构。该结构的数据元素之间存在着多对多的关系,图形结构也称作网状结构。 5.1 数据结构概述 5.1.1 数据结构 图 5‑1 四类基本结构的示意图 5.1 数据结构概述 4=5.1.1 数据结构 逻辑结构——数据元素之间的逻辑关系(设计算法—数学模型) 物理结构——数据结构在计算机中的映像(存储结构—算法的实现) 顺序存储结构——借助元素在存储器的相对位置来表示数据元素之间的逻辑关系。 链式存储结构——借助指示元素存储地址的指针表示数据元素之间的逻辑关系。 5.1 数据结构概述 5.1.1 数据结构 数据结构主要研究数据的各种逻辑结构和存储结构,以及对数据的各种操作。因此,主要有三个方面的内容:数据的逻辑结构;数据的物理存储结构;对数据的操作(或算法)。通常,算法的设计取决于数据的逻辑结构,算法的实现取决于数据的物理存储结构。 5.1 数据结构概述 5.1.2 算法 用计算机解决一个复杂的实际问题,大体需要如下的步骤。 (1)将实际问题数学化,即把实际问题抽象为一个带有一般性的数学问题。这一步要引入一些数学概念,精确地阐述数学问题,弄清问题的已知条件、所要求的结果、以及在已知条件和所要求的结果之间存在着的隐式或显式的联系。 (2)对于确定的数学问题,设计其求解的方法,即所谓的算法设计。这一步要建立问题的求解模型,即确定问题的数据模型并在此模型上定义一组运算,然后借助于对这组运算的调用和控制,从已知数据出发导向所要求的结果,形成算法并用自然语言来表述。这种语言还不是程序设计语言,不能被计算机所接受。 (3)用计算机上的一种程序设计语言来表达已设计好的算法。换句话说,将非形式自然语言表达的算法转变为一种程序设计语言表达的算法。这一步叫程序设计或程序编制。 (4)在计算机上编辑、调试和测试编制好的程序,直到输出所要求的结果。 5.1 数据结构概述 5.1.2 算法 1. 算法的概念 算法: 对问题求解的描述,为解决问题给出的一个确定的、有限长的操作序列。 算法具有以下五个重要的特征: 1)有穷性:一个算法必须保证执行有限步之后结束。 2)确切性:算法的每一步骤必须有确切的定义。 3)输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件。 4)输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法没有实际意义。 5)可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。 5.1 数据结构概述 5

文档评论(0)

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

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

1亿VIP精品文档

相关文档