欧几里得算法

来源:互联网 发布:2016淘宝客如何推广 编辑:程序博客网 时间:2024/06/06 07:38

欧几里得算法 


求最大公约数。

思路: 计算两个非负整数p和q的最大公约数: 若q是0,则最大公约数为p;

        否则,将p除以q得到余数r,p和q的最大公约数即为q和r 的最大公约数。

代码:(递归)

public static int get1 (int p, int q){if (q == 0) return p;int r = p % q;return get1(q, r);}
(循环)
public static int get2 (int p , int q){if (q == 0)return p;int r = p % q;while (r != 0){p = q;q = r;r = p % q;}return q;}

原创粉丝点击