java算法学习
最大公约数
欧几里得算法
描述:计算两个非负整数p和q的最大公约数:
- 若q是0,则最大公约数为p。
- 否则,将p除以q得到余数r,p和q的最大公约数即为q和r的最大公约数。
根据算法的自然描述,我们可以很轻松地得到以下的递归实现:
1 public static int euclid(int p, int q) { 2 3 if (q == 0) 4 return p; 5 6 int r = p % q; 7 return euclid(q, r); 8 }
版权声明:本文为happyfans原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。