算法与数据结构.pptVIP

  • 2
  • 0
  • 约2.37万字
  • 约 135页
  • 2024-01-29 发布于广西
  • 举报

第三章算法与数据结构;第三章算法与数据结构;3.1算法;例如,辗转相除法是求两个整数的最大公约数的数学算法。它的解题策略是:以小数除大数,得余数,如果余数不为零,则小数成被除数,余数成除数,除后得新余数。若余数为零,则此除数即为最大公约数,否则继续辗转除。不妨先拿两个正整数试一试:

544和119。544/119的余数是68,119/68的余数是51,68/51的余数是17,51/17的余数是0。所以544和119的最大公约数是17。

如何写出计算机算法呢?计算机怎么进行辗转相除呢?显然只能用计算机容许的动作,写出的算法才是可行的。

;看如何写出计算机的辗转相除法。见课本62页

令变量x为被除数,y为除数,z为余数。计算机中有求余函数mod,则:

z=xmody

然后x←y,y←z就换过来了,x依然是被除数,y是除数。于是写出最大公约数(GCD)算法:

1.设定x,y,z

2.输入x,y

3.ifyxthenz←y;y←x;x←zfi

4.whiley?0do

A.z←y

B.y←xmody;

C.x←zod

5.输出z,即最大公约数□;其中

if…then…fi、whiledo…od是分支和循环控制

‘fi’和‘od

文档评论(0)

1亿VIP精品文档

相关文档