第1章算法与程序设计简介.pptVIP

  • 3
  • 0
  • 约5.53千字
  • 约 31页
  • 2017-07-17 发布于四川
  • 举报
Visual FoxPro 2. 算法描述举例 【例1.1】 求两个整数a,b(ab)的最大公约数的欧几里德算法: (1) a除以b得余数r;若r=0,则b为所求的最大公约数。 (2) 若r≠0,以b为a,r为b,继续(1)。 注意到任两整数总存在最大公约数,上述辗转相除过程中余数逐步变小,相除过程总会结束。 欧几里德算法又称为“辗转相除”法,具体描述如下: 输入正整数a,b; if(ab) {c=a;a=b;b=c;} /* 交换a,b ,确保ab */ r=a%b; while(r!=0) { a=b;b=r; /* 实施辗转相除 */ r=a%b; } printf(最大公约数b); 算法复杂性的高低体现运行该算法所需计算机资源的多少。 算法的复杂性越高,所需的计算机资源越多;反之,算法的复杂性越低,所需的计算机资源越少。 计算机资源,最重要的是时间资源与空间资源。 需要计算机时间资源的量称为时间复杂度,需要计算机空间资源的量称为空间复杂度。 算法分析是指对算法的执行时间与所需空间的估算,定量给出运行算法所需的时间数量级与空间数量级。 在分析算法时,隐藏细节的数学表示法成为大写O记法 一个算法的时间复杂度是指算法运行所需的时间。一个算法的运行时间取决于算法所需执行的语句(运算)的多

文档评论(0)

1亿VIP精品文档

相关文档