- 0
- 0
- 约4.76千字
- 约 49页
- 2018-11-12 发布于天津
- 举报
基本概念和术语教程教案.ppt
算法一: For(i=1;i=100;i++) s=s+i; 算法二: For(i=1;i=50;i++) s=s+101; 算法三: s=101*50; 求1~100这100个数的总和 1.4.3 算法效率的度量 时间评价 算法执行时间:所有语句执行时间的总和。 一般是对算法中语句的执行次数做出估计 语句频度:该语句在一个算法中重复执行的次数。 1.4.3 算法效率的度量 算法的时间复杂度: 一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,算法的时间量度记作 T(n)=O(f(n)) 称作算法的渐近时间复杂度。即算法的时间量度, “O”表示数量级,“f(n)”表示语句总的执行次数是给定问题的规模n的函数 随问题规模n的增大,算法的频度T(n)和f(n)的增长率同阶。 例1: x+=5; 单个语句的频度为1,则程序段的时间复杂度为T(n)=O(1)(频度:是指该语句重复执行的次数) 例 for (i=1; i=n; i++) /* n */ for (j=1; j=n; j++) /* n2 */ c [i][j]=0; /* n2 */ -------------------------------------------------------- T(n)=2n2+n 当n充分大时, T(n)与n2是同阶的。 该算法时间复杂度为:T(n)=O(n2) 一个算法时间为O(1)的算法,它的基本运 算执行的次数是固定的。因此,总的时间 由一个常数(即零次多项式)来限界。而 一个时间为O(n2)的算法则由一个二次多项 式来限界。 主目录 下一页 上一页 退 出 本章要点 * 退 出 主目录 下一页 第一章 绪论 1.1 基本概念和术语 1.2 什么是数据结构 1.3 数据类型 1.4 算法和算法分析 “学生”表格 1.1 基本概念和术语 数据对象(Data Object) 数据对象是性质相同的数据元素的集合,是数据的一个子集 例如 整数数据对象 N = { 0, ?1, ?2, … } 学生数据对象 1.1 基本概念和术语 “学生”表格 数据结构(Data Structure)是指互相之间存在着一种或多种关系的数据元素的集合。在任何问题中,数据元素之间都不会是孤立的,在它们之间都存在着这样或那样的关系,这种数据元素之间的关系称为结构。 是相互之间存在一种或多种特定关系的数据元素的集合 数据结构的逻辑结构和物理结构(又称为存储结构)两个方面(层次) 逻辑结构:是对数据元素之间的逻辑关系的描述 物理结构:是逻辑结构在计算机中的表示或实现 1.2 什么是数据结构 逻辑结构可描述为 B=(D,R) 有限个数据元素的集合 有限个节点间关系的集合 一般用二元组a,b表示D中各数据元素之间的前驱、后继关系 1.2.1 逻辑结构 Sun Mon Tue Wed Thu Fri Sat 线性结构:指的是数据元素之间存在着 “一对一”的线性关系的数据结构 例1:一周七天的数据结构的表示 1.2.1 逻辑结构 B=(D,R) D={学院,计算机系,电子系,机电系,土木系,应用专业,网络专业,信息管理专业} R={学院,计算机系,学院,电子系,学院,机电系,学院,土木系,计算机系,应用专业,计算机系,网络专业,计算机系,信息管理专业} 例2:学校的人事管理 1.2.1 逻辑结构 学院 电子系 土木系 计算机系 机电系 应用专业 网络专业 信息管理专业 树型结构:指的是数据元素之间存在着 “一对多”的树形关系的数据结构 例2:学校的人事管理 1.2.1 逻辑结构 1 2 3 图状或网状结构:指的是数据元素之间存在着“多对多”的网络关系的数据结构 例3:3个站点的关系图 1.2.1 逻辑结构 B=(D,R) D={丁一,王五,李四} R=? 丁一 王五 李四 纯集合结构:指的是在数据元素之间除了“同属一个集合”之外,别无其他关系 例4:3个没有任何关系的学生 1.2.1 逻辑结构 数据之间的相互关系称为逻辑结构。通常分 为四类基本结构: 集合 结构中的数据元素除了同属于一种类型外,别无其它关系。 线性结构 结构中的数据元素之间存在一对一的关系。 树型结构 结构中的数据元素之间存在一对多的关系。 图状结构或网状结构 结构中的数据元素之间存在多对多的关系。 1.2.
原创力文档

文档评论(0)