Chap1-绪论Chap1-绪论.ppt

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

习题: 1.在程序设计中,常用下列三种不同的出错处理方式: a.用exit语句终止执行并报告错误。 b.以函数的返回值区别正确返回或错误返回 c.设置一个整形变量的参数以区别正确返回或某种错误的返回。 试讨论这三种方法的优缺点。 2. 设n为2的乘幂,且n2,试求下列算法的时间复杂度与count的值(以n的函数形式表示) int time(int n) { count=0; int x=2; while ( x n/2) { x*=2; count++; } return(count); }//time 抽象数据类型的描述方法 抽象数据类型可用(D,S,P)三元组表示 其中,D 是数据对象, S 是 D 上的关系集, P 是对 D 的基本操作集。 三、抽象数据类型 ADT 抽象数据类型名 { 数据对象:〈数据对象的定义〉 数据关系:〈数据关系的定义〉 基本操作:〈基本操作的定义〉 } ADT 抽象数据类型名 其中基本操作的定义格式为: 基本操作名(参数表) 初始条件:〈初始条件描述〉 操作结果:〈操作结果描述〉 三、抽象数据类型 抽象数据类型的表示和实现 抽象数据类型需要通过固有数据类型(高级编程语言中已实现的数据类型)来实现。 例如,对以上定义的复数 三、抽象数据类型 typedef struct { float realpart; float imagpart; }complex; // -----存储结构的定义 // -----基本操作的函数原型说明 void Assign( complex Z, float realval, float imagval ); // 构造复数 Z,其实部和虚部分别被赋以参数 // realval 和 imagval 的值 三、抽象数据类型 float GetReal( complex Z ); // 返回复数 Z 的实部值 float Getimag( complex Z ); // 返回复数 Z 的虚部值 void add( complex z1, complex z2, complex sum ); // 以 sum 返回两个复数 z1, z2 的和 三、抽象数据类型 // -----基本操作的实现 void add( complex z1, complex z2, complex sum ) { // 以 sum 返回两个复数 z1, z2 的和 sum.realpart = z1.realpart + z2.realpart; sum.imagpart = z1.imagpart + z2.imagpart; } { 其它省略 } 三、抽象数据类型 1.3 算法和算法的衡量 一、算法 二、算法设计的原则 三、算法效率的衡量方法和准则 四、算法的存储空间需求 算法是为了解决某类问题而规定的一个有限长的操作序列。一个算法必须满足以下五个重要特性: 1.有穷性 2.确定性 3.可行性 4.有输入 5.有输出 一、算法 1.有穷性 对于任意一组合法输入值,在执行有穷步骤之后一定能结束,即:算法中的每个步骤都能在有限时间内完成; 2.确定性 对于每种情况下所应执行的操作,在算法中都有确切的规定,使算法的执行者或阅读者都能明确其含义及如何执行。并且在任何条件下,算法都只有一条执行路径; 3.可行性 算法中的所有操作都必须足够基本,都可以通过已经实现的基本操作运算有限次实现之; 一、算法 4.有输入 作为算法加工对象的量值,通常体现为算法中的一组变量。有些输入量需要在算法执行过程中输入,而有的算法表面上可以没有输入,实际上已被嵌入算法之中; 5.有输出 它是一组与“输入”与确定关系的量值,是算法进行信息加工后得到的结果,这种确定关系即为算法的功能。 一、算法 二、算法设计的原则 设计算法时,通常应考虑达到以下目标: 1.正确性 2. 可读性 3.健壮性 4.高效率与低存储量需求 1.正确性 首先,算法应当满足以特定的“规格说明”方式给出的需求。 其次,对算法是否“正确”的理解可以有以下四个层次: a.程序中不含语法错误; b.程序对于几组输入数据能够得出

文档评论(0)

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

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

1亿VIP精品文档

相关文档