71304数据结构内容摘要:

int length。 } DataList。 抽象数据类型  抽象数据类型:由用户定义,表示问题的数据模型  由其他数据类型组成,并包括一组相关操作  三大特征  信息隐藏、数据封装、使用与实现分离 22 class Circle { // 对象 : 几何圆 float r。 // 圆的半径 public: Circle(float r)。 // 构造函数,创建一个半径为 r的对象实例 float Circumference( )。 // 返回该实例的周长 float Area( )。 // 返回该实例的面积 }。 抽象数据类型  抽象数据类型三大特征  信息隐藏:把所有数据和操作分为公有和私有,可减少接口复杂性,从而减少出错机会。  数据封装:把数据和操作封装在一起,从语义上更加完整。  使用与实现相分离:使用者只能通过接口上的操作来访问数据,一旦将来修改数据结构,可以使得修改局部化,提高系统灵活性。 23 抽象数据类型  作业:二维向量的抽象数据类型  数据类型  操作:加、减、点乘、叉乘 24 算法定义  是对特定问题求解步骤的一种描述,是指令的有限序列。  算法五大特性  输入:有 0个或多个输入  输出:有 1个或多个输出  有限性:算法有限步结束,指令有限时间完成  确定性:每条指令有确切含义  可行性:每个运算可由计算机有限条指令完成 25 算法定义  算法举例  “百钱买百鸡”问题:公鸡每只 5钱,母鸡每只 3钱,小鸡 3只 1钱, 100钱买 100只鸡,问各种鸡可买多少只 ?  令公鸡母鸡小鸡分别为 x,y,z只 26 例: for(x=0。 x=100。 x++) { for(y=0。 y=100。 y++) { for(z=0。 z=100。 z++) { if(x+y+z==100 amp。 amp。 5*x+3*y+z/3==100 amp。 amp。 z%3==0) { printf(“%d,%d,%d”,x,y,z)。 } } } 算法定义  算法举例  欧几里德算法 ——辗转相除法求两个自然数 m和 n的最大公约数 27 输入 : m,n 输出 : m和 n的最大公约数 r = m % n。 循环直到 r等于 0 { m = n。 n = r。 r = m % n。 } 输出 n 算法性。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。