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 算法性。71304数据结构
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。