1、第三课本课主题: 算法及算法设计要求教学目的: 掌握算法的定义及特性,算法设计的要求教学重点: 算法的特性,算法设计要求教学难点: 算法设计的要求授课内容:一、算法的定义及特性1、定义:ispass(int num44) int i,j; for(i=0;ib)if(ac) return c;else return a; 程序对于几组输入数据能够得出满足规格说明要求的结果。max(int a,int b,int c)if (ab)if(ac) return a;else return c; /* 8,6,7 */ /* 9,3,2 */程序对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够
2、得出满足规格说明要求的结果。max(int a,int b,int c)if (ab)if(ac) return a;else return c; elseif(bc) return b;else return c; 程序对于一切合法的输入数据都能产生满足规格说明要求的结果。2、可读性3、健壮性4、效率与低存储量需求效率指的是算法执行时间。对于解决同一问题的多个算法,执行时间短的算法效率高。存储量需求指算法执行过程中所需要的最大存储空间。两者都与问题的规模有关。算法一 算法二在三个整数中求最大者max(int a,int b,int c)if (ab)if(ac) return a;else
3、return c; elseif(bc) return b;else return c; /*无需额外存储空间,只需两次比较*/max(int a3)int c,int i;c=a0; for(i=1;ic) c=ai;return c; /*需要两个额外的存储空间,两次比较,至少一次赋值*/*共需 5 个整型数空间*/ 求 100 个整数中最大者 同上的算法难写,难读max(int a100)int c,int i;c=a0; for(i=1;ic) c=ai;return c;/*共需 102 个整型数空间*/ 三、总结1、算法的特性2、算法设计要求:正确性、可读性、健壮性、效率与低存储量需求。